diff options
Diffstat (limited to 'src/discord/verification.ts')
| -rw-r--r-- | src/discord/verification.ts | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/src/discord/verification.ts b/src/discord/verification.ts deleted file mode 100644 index 89d26db..0000000 --- a/src/discord/verification.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { verifyKey } from "discord-interactions"; -import type { Environment, DiscordInteraction } from "./interfaces.ts"; - -export const verifyDiscordRequest = async ( - request: Request, - environment: Environment, -): Promise<{ isValid: boolean; interaction?: DiscordInteraction }> => { - const signature = request.headers.get("x-signature-ed25519"); - const timestamp = request.headers.get("x-signature-timestamp"); - const body = await request.text(); - const isValidRequest = - signature && - timestamp && - (await verifyKey( - body, - signature, - timestamp, - environment.DISCORD_PUBLIC_KEY, - )); - - if (!isValidRequest) return { isValid: false }; - - return { interaction: JSON.parse(body) as DiscordInteraction, isValid: true }; -}; |