From 79a5138ee99ab38713aa4a7ce5f32434040ddb47 Mon Sep 17 00:00:00 2001 From: CounterFire2023 <136581895+CounterFire2023@users.noreply.github.com> Date: Mon, 29 Apr 2024 18:31:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2discord=20role,=20=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E5=87=BA=E9=94=99,=20=E8=BF=94=E5=9B=9E=E6=B2=A1role?= =?UTF-8?q?=E7=9A=84=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/services/oauth.svr.ts | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/services/oauth.svr.ts b/src/services/oauth.svr.ts index 175b5a0..d023813 100644 --- a/src/services/oauth.svr.ts +++ b/src/services/oauth.svr.ts @@ -3,6 +3,7 @@ import { handleFetch, timeoutFetch } from 'zutils/utils/net.util' import { AuthRecord, PlatEnum } from 'models/oauth/AuthRecord' import { ZError, ZRedisClient } from 'zutils' import { getAvableAccessToken, userGuildMember } from './discord.svr' +import { logger } from 'ethers' const SECRET_KEY = process.env.HASH_SALT const DEFAULT_TIMEOUT = 30000 @@ -83,12 +84,17 @@ export async function checkDiscordRole(address: string, gid: string, rid: string console.error(e) } } - let accessToken = await getAvableAccessToken(record) - let data = await userGuildMember(accessToken, gid) - roleSet = new Set(data.roles) - let result = roleSet.has(rid) - new ZRedisClient().pub.set(key, JSON.stringify([...roleSet]), 'EX', 300, () => { - console.log('cache set success: ', key) - }) - return { data: { result }, errcode: 0, errmsg: '' } + try { + let accessToken = await getAvableAccessToken(record) + let data = await userGuildMember(accessToken, gid) + roleSet = new Set(data.roles) + let result = roleSet.has(rid) + new ZRedisClient().pub.set(key, JSON.stringify([...roleSet]), 'EX', 300, () => { + console.log('cache set success: ', key) + }) + return { data: { result }, errcode: 0, errmsg: '' } + } catch (err) { + logger.info('checkDiscordRole', err) + return { data: { result: false }, errcode: 14, errmsg: 'had no role' } + } }