wechat-article / server /kv /cookie.ts
asemxin2000's picture
Deploy wechat-article-exporter to Space
6e41657 verified
Raw
History Blame Contribute Delete
820 Bytes
import { type CookieEntity } from '~/server/utils/CookieStore';
export type CookieKVKey = string;
export interface CookieKVValue {
token: string;
cookies: CookieEntity[];
}
export async function setMpCookie(key: CookieKVKey, data: CookieKVValue): Promise<boolean> {
const kv = useStorage('kv');
try {
await kv.set<CookieKVValue>(`cookie:${key}`, data, {
// https://developers.cloudflare.com/kv/api/write-key-value-pairs/#expiring-keys
expirationTtl: 60 * 60 * 24 * 4, // 4 days
});
return true;
} catch (err) {
console.error('kv.set call failed:', err);
return false;
}
}
export async function getMpCookie(key: CookieKVKey): Promise<CookieKVValue | null> {
const kv = useStorage('kv');
return await kv.get<CookieKVValue>(`cookie:${key}`);
}