mirror of
https://github.com/woodchen-ink/Q58Connect.git
synced 2025-07-19 06:21:55 +08:00
refactor: Simplify Q58 OAuth callback authorization logic
This commit is contained in:
parent
c78b2141aa
commit
569ba4c186
@ -27,30 +27,13 @@ export default async function Q58CallbackPage({
|
||||
throw new Error("Client Id invalid (code: -1004).");
|
||||
}
|
||||
|
||||
// 检查应用是否被禁用
|
||||
if (!client.enabled) {
|
||||
const redirectUri = client.redirectUri;
|
||||
const redirectUrl = new URL(redirectUri);
|
||||
redirectUrl.searchParams.set("error", "access_denied");
|
||||
redirectUrl.searchParams.set("error_description", "该应用已被禁用");
|
||||
return redirect(redirectUrl.toString());
|
||||
}
|
||||
|
||||
// verify q58 callback
|
||||
// verify discourse callback
|
||||
const user = await q58CallbackVerify(searchParams.sso, searchParams.sig);
|
||||
|
||||
// check authorization
|
||||
const authorization = await findAuthorization(user.id, client.id);
|
||||
|
||||
if (authorization) {
|
||||
// 如果授权被禁用,也返回错误
|
||||
if (!authorization.enabled) {
|
||||
const redirectUrl = new URL(client.redirectUri);
|
||||
redirectUrl.searchParams.set("error", "access_denied");
|
||||
redirectUrl.searchParams.set("error_description", "您的授权已被禁用");
|
||||
return redirect(redirectUrl.toString());
|
||||
}
|
||||
|
||||
const redirectUrl = await getAuthorizeUrl(oauthParams);
|
||||
return redirect(redirectUrl);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user