feat:现有的 KV 存储数据迁移到 D1 数据库

This commit is contained in:
初衷
2025-08-13 16:26:04 +08:00
parent a91408b40b
commit 2589927def
20 changed files with 1621 additions and 243 deletions

View File

@@ -1,3 +1,5 @@
import { getDatabase } from '../../../utils/databaseAdapter';
export async function onRequest(context) {
// 安全设置相关GET方法读取设置POST方法保存设置
const {
@@ -9,11 +11,11 @@ export async function onRequest(context) {
data, // arbitrary space for passing data between middlewares
} = context;
const kv = env.img_url
const db = getDatabase(env);
// GET读取设置
if (request.method === 'GET') {
const settings = await getSecurityConfig(kv, env)
const settings = await getSecurityConfig(db, env)
return new Response(JSON.stringify(settings), {
headers: {
@@ -27,8 +29,8 @@ export async function onRequest(context) {
const body = await request.json()
const settings = body
// 写入 KV
await kv.put('manage@sysConfig@security', JSON.stringify(settings))
// 写入数据库
await db.put('manage@sysConfig@security', JSON.stringify(settings))
return new Response(JSON.stringify(settings), {
headers: {
@@ -39,10 +41,10 @@ export async function onRequest(context) {
}
export async function getSecurityConfig(kv, env) {
export async function getSecurityConfig(db, env) {
const settings = {}
// 读取KV中的设置
const settingsStr = await kv.get('manage@sysConfig@security')
// 读取数据库中的设置
const settingsStr = await db.get('manage@sysConfig@security')
const settingsKV = settingsStr ? JSON.parse(settingsStr) : {}
// 认证管理