Files
blog-frontend-v2/src/lib/markdoc-cache.server.ts
passthem 5e5f13a949
All checks were successful
continuous-integration/drone/push Build is passing
添加 Redis 支持
2026-04-09 15:57:28 +08:00

21 lines
544 B
TypeScript

import './server-only.ts'
import type { RenderableTreeNode } from '@markdoc/markdoc'
import KeyV from 'keyv'
import { createHash } from 'node:crypto'
import { storage } from './keyv-cache.server.ts'
const markdocVersion = '1'
export const markdocCache = new KeyV<RenderableTreeNode>({
store: storage,
namespace: `markdoc-cache-${markdocVersion}`,
ttl: 1000 * 60 * 60 * 24 * 7,
})
export const generateCacheKey = (content: string) => {
return createHash('sha256')
.update(content)
.update(markdocVersion)
.digest('hex')
}