✨ feat(oauth): Refactor platform parameter handling and improve logout redirection logic
This commit is contained in:
parent
aa6dda894b
commit
8346c85109
@ -29,6 +29,7 @@ export default function Certification({ platform, children }: CertificationProps
|
||||
case 'google':
|
||||
return googleLoginCallback(body);
|
||||
case 'telegram':
|
||||
// 回调参数是 # 开头的,需要去掉
|
||||
return telegramLoginCallback(body);
|
||||
default:
|
||||
break;
|
||||
|
||||
@ -5,25 +5,33 @@ import { getTranslations } from 'next-intl/server';
|
||||
import Certification from './certification';
|
||||
|
||||
export async function generateStaticParams() {
|
||||
return {
|
||||
paths: [
|
||||
{ params: { platform: 'telegram' } },
|
||||
{ params: { platform: 'apple' } },
|
||||
{ params: { platform: 'facebook' } },
|
||||
{ params: { platform: 'google' } },
|
||||
{ params: { platform: 'github' } },
|
||||
],
|
||||
fallback: false,
|
||||
};
|
||||
return [
|
||||
{
|
||||
platform: 'telegram',
|
||||
},
|
||||
{
|
||||
platform: 'apple',
|
||||
},
|
||||
{
|
||||
platform: 'facebook',
|
||||
},
|
||||
{
|
||||
platform: 'google',
|
||||
},
|
||||
{
|
||||
platform: 'github',
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
export default async function Page({
|
||||
params: { platform },
|
||||
params,
|
||||
}: {
|
||||
params: {
|
||||
platform: string;
|
||||
};
|
||||
}) {
|
||||
const { platform } = await params;
|
||||
const t = await getTranslations('auth');
|
||||
return (
|
||||
<Certification platform={platform}>
|
||||
|
||||
@ -45,7 +45,8 @@ export function Logout() {
|
||||
if (!isBrowser()) return;
|
||||
cookies.remove('Authorization');
|
||||
const pathname = location.pathname;
|
||||
if (!['', '/', '/auth', '/tos', '/oauth'].includes(pathname)) {
|
||||
console.log(pathname);
|
||||
if (!['', '/', '/auth', '/tos'].includes(pathname) || !pathname.includes('/oauth/')) {
|
||||
setRedirectUrl(location.pathname);
|
||||
location.href = `/auth`;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user