/** * 测试后端 API 编码 */ const axios = require('axios'); async function testEncoding() { try { // 首先登录 console.log('1. 登录...'); const loginResponse = await axios.post('http://localhost:4000/api/auth/login', { username: 'testuser', password: 'Password123@' }); const token = loginResponse.data.data.token; console.log('✅ 登录成功'); // 获取文档 console.log('\n2. 获取文档...'); const docsResponse = await axios.get('http://localhost:4000/api/documents', { headers: { 'Authorization': `Bearer ${token}` } }); console.log('响应头:', docsResponse.headers['content-type']); console.log('响应数据:', JSON.stringify(docsResponse.data, null, 2)); // 检查中文字符 if (docsResponse.data.data && docsResponse.data.data.length > 0) { const firstDoc = docsResponse.data.data[0]; console.log('\n第一个文档:'); console.log(' 标题:', firstDoc.title); console.log(' 内容:', firstDoc.content?.substring(0, 50)); // 检查编码 const hasChinese = /[\u4e00-\u9fa5]/.test(firstDoc.title + firstDoc.content); console.log(' 包含中文:', hasChinese ? '是' : '否'); } } catch (error) { console.error('❌ 错误:', error.message); if (error.response) { console.error('响应数据:', error.response.data); } } } testEncoding();