feat: 完成用户鉴权相关api
This commit is contained in:
1 parent
79cc9c34d6
commit
4c69f57aaa
22 files changed
+903
-68
No files matched your search
@@ -1,22 +1,35 @@
|
||||
import type { postItem } from "~/types/post";
|
||||
import { defineEventHandler } from 'h3';
|
||||
import DB from 'better-sqlite3';
|
||||
|
||||
function generateFakeData(length: number) {
|
||||
const data: postItem[] = [];
|
||||
for (let i = 0; i < length; i++) {
|
||||
data.push({
|
||||
id: i,
|
||||
title: `测试标题`,
|
||||
summary: `测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要测试摘要`,
|
||||
type: 'markdown',
|
||||
tags: ['test', 'test1'],
|
||||
url: '',
|
||||
date: parseInt(new Date().getTime().toFixed()),
|
||||
});
|
||||
}
|
||||
return data;
|
||||
}
|
||||
export default defineEventHandler(async (event) => {
|
||||
const db = new DB('./userData/db/posts.db');
|
||||
|
||||
export default defineEventHandler((event) => {
|
||||
const data = generateFakeData(50)
|
||||
return data
|
||||
})
|
||||
// 获取所有标签
|
||||
const tagsMap = new Map<number, string[]>();
|
||||
const tagsRows = db.prepare('SELECT id, tag1, tag2, tag3, tag4, tag5, tag6, tag7, tag8, tag9, tag10, tag11, tag12, tag13, tag14, tag15 FROM tags').all();
|
||||
tagsRows.forEach((row: any) => {
|
||||
const tags = [];
|
||||
for (let i = 1; i <= 15; i++) {
|
||||
const tag = row[`tag${i}`];
|
||||
if (tag) {
|
||||
tags.push(tag);
|
||||
}
|
||||
}
|
||||
tagsMap.set(row.id, tags);
|
||||
});
|
||||
|
||||
// 获取所有文章
|
||||
const posts = db.prepare('SELECT id, title, summary, type, tag_id, url, date FROM posts').all();
|
||||
|
||||
// 替换tag_id为标签数组
|
||||
posts.forEach((post: any) => {
|
||||
post.tags = tagsMap.get(post.tag_id) || [];
|
||||
});
|
||||
|
||||
db.close();
|
||||
|
||||
return {
|
||||
code: 200,
|
||||
data: posts
|
||||
};
|
||||
});
|
||||
Reference in new issue
Block a user