Files
yunhaifinance/backend/test-users.js
T

113 lines
2.9 KiB
JavaScript
Raw Normal View History

const http = require('http');
console.log('测试users模块...');
// 首先获取token
const loginData = JSON.stringify({
username: 'admin',
password: 'X123c321@'
});
const loginOptions = {
hostname: 'localhost',
port: 3002,
path: '/api/auth/login',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': Buffer.byteLength(loginData)
}
};
console.log('1. 获取token...');
const loginReq = http.request(loginOptions, (loginRes) => {
let loginData = '';
loginRes.setEncoding('utf8');
loginRes.on('data', (chunk) => {
loginData += chunk;
});
loginRes.on('end', () => {
try {
const parsed = JSON.parse(loginData);
if (loginRes.statusCode === 200 && parsed.success && parsed.data && parsed.data.token) {
const token = parsed.data.token;
console.log(`✅ 获取token成功: ${token.substring(0, 30)}...`);
// 测试获取用户列表
testGetUsers(token);
} else {
console.log('❌ 获取token失败');
console.log('响应:', parsed);
process.exit(1);
}
} catch (e) {
console.log('解析登录响应失败:', e.message);
process.exit(1);
}
});
});
loginReq.on('error', (e) => {
console.error(`登录请求失败: ${e.message}`);
process.exit(1);
});
loginReq.write(loginData);
loginReq.end();
function testGetUsers(token) {
console.log('\n2. 测试获取用户列表...');
const options = {
hostname: 'localhost',
port: 3002,
path: '/api/users',
method: 'GET',
headers: {
'Authorization': `Bearer ${token}`
}
};
console.log(`发送请求到: ${options.method} http://${options.hostname}:${options.port}${options.path}`);
const req = http.request(options, (res) => {
console.log(`状态码: ${res.statusCode}`);
let data = '';
res.setEncoding('utf8');
res.on('data', (chunk) => {
data += chunk;
});
res.on('end', () => {
console.log('\n响应体:');
try {
const parsed = JSON.parse(data);
console.log(JSON.stringify(parsed, null, 2));
if (res.statusCode === 200 && parsed.success && Array.isArray(parsed.data)) {
console.log(`\n✅ users模块迁移成功!`);
console.log(`获取到 ${parsed.data.length} 个用户`);
if (parsed.data.length > 0) {
console.log(`第一个用户: ${parsed.data[0].username} (${parsed.data[0].name})`);
}
} else {
console.log('\n❌ users模块迁移失败');
console.log('响应不符合预期');
process.exit(1);
}
} catch (e) {
console.log('解析响应失败:', e.message);
console.log('原始响应:', data);
process.exit(1);
}
});
});
req.on('error', (e) => {
console.error(`请求失败: ${e.message}`);
process.exit(1);
});
req.end();
}