mirror of
https://github.com/Nezumi-2711/onedrive-vercel-index.git
synced 2026-09-22 13:38:45 +00:00
30 lines
889 B
TypeScript
30 lines
889 B
TypeScript
import Redis from 'ioredis'
|
|
import siteConfig from '../config/site.config'
|
|
|
|
// Persistent key-value store is provided by Redis, hosted on Upstash
|
|
// https://vercel.com/integrations/upstash
|
|
const kv = new Redis(process.env.REDIS_URL)
|
|
|
|
export async function getOdAuthTokens(): Promise<{ accessToken: unknown; refreshToken: unknown }> {
|
|
const accessToken = await kv.get(`${siteConfig.kvPrefix}access_token`)
|
|
const refreshToken = await kv.get(`${siteConfig.kvPrefix}refresh_token`)
|
|
|
|
return {
|
|
accessToken,
|
|
refreshToken,
|
|
}
|
|
}
|
|
|
|
export async function storeOdAuthTokens({
|
|
accessToken,
|
|
accessTokenExpiry,
|
|
refreshToken,
|
|
}: {
|
|
accessToken: string
|
|
accessTokenExpiry: number
|
|
refreshToken: string
|
|
}): Promise<void> {
|
|
await kv.set(`${siteConfig.kvPrefix}access_token`, accessToken, 'ex', accessTokenExpiry)
|
|
await kv.set(`${siteConfig.kvPrefix}refresh_token`, refreshToken)
|
|
}
|