| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- const http = require('http');
- async function testGenerateAPI() {
- const bookId = 2;
-
- console.log(`测试 bookId=${bookId} 的生成API...\n`);
-
- // 1. 先重置状态
- console.log('步骤1: 重置书籍状态...');
- const { PrismaClient } = require('@prisma/client');
- const prisma = new PrismaClient();
-
- await prisma.book.update({
- where: { id: bookId },
- data: {
- status: 'draft',
- progress: 0,
- errorMsg: null,
- }
- });
- console.log('✅ 状态已重置\n');
-
- // 2. 调用生成API
- console.log('步骤2: 调用生成API...');
-
- const postData = JSON.stringify({});
-
- const options = {
- hostname: 'localhost',
- port: 3000,
- path: `/api/book-generator/langgraph/books/${bookId}/generate`,
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json',
- 'Content-Length': Buffer.byteLength(postData),
- },
- };
-
- const response = await new Promise((resolve, reject) => {
- const req = http.request(options, (res) => {
- let data = '';
- res.on('data', chunk => data += chunk);
- res.on('end', () => {
- resolve({
- statusCode: res.statusCode,
- body: JSON.parse(data),
- });
- });
- });
-
- req.on('error', reject);
- req.write(postData);
- req.end();
- });
-
- console.log('\nAPI响应:');
- console.log(`状态码: ${response.statusCode}`);
- console.log(`响应体: ${JSON.stringify(response.body, null, 2)}`);
-
- // 3. 等待5秒后检查状态
- console.log('\n步骤3: 等待5秒后检查状态...');
- await new Promise(resolve => setTimeout(resolve, 5000));
-
- const book = await prisma.book.findUnique({
- where: { id: bookId },
- select: { id: true, status: true, progress: true, errorMsg: true }
- });
-
- console.log('\n当前状态:');
- console.log(JSON.stringify(book, null, 2));
-
- await prisma.$disconnect();
-
- console.log('\n✅ 测试完成!');
- console.log('\n请刷新前端页面查看:http://localhost:5173/#/pages/book-generator/index?id=2');
- }
- testGenerateAPI().catch(console.error);
|