Files
huishou/test-api-3.mjs
T
2026-07-27 13:37:48 +08:00

63 lines
2.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { Client } from 'ssh2';
const conn = new Client();
conn.on('ready', () => {
console.log('=== 测试后端API(使用用户ID ===\n');
console.log('1. 获取用户列表:');
conn.exec('curl -s http://localhost:4000/api/users', (err, stream) => {
if (err) { console.log('ERR:', err); conn.end(); return; }
let output = '';
stream.on('data', (d) => output += d.toString());
stream.on('close', () => {
try {
const result = JSON.parse(output);
const users = result.data || [];
console.log('用户列表:');
users.forEach(user => {
console.log(` - id: ${user.id}, name: ${user.name}, phone: ${user.phone}`);
});
const ningze = users.find(u => u.name === '宁赜');
if (ningze) {
console.log(`\n2. 测试查询宁赜(ID:${ningze.id})的订单:`);
conn.exec(`curl -s "http://localhost:4000/api/orders?collector=${ningze.id}"`, (err, stream2) => {
if (err) { console.log('ERR:', err); conn.end(); return; }
let output2 = '';
stream2.on('data', (d) => output2 += d.toString());
stream2.on('close', () => {
try {
const result2 = JSON.parse(output2);
console.log(`返回订单数: ${result2.data?.length || 0}`);
if (result2.data && result2.data.length > 0) {
result2.data.forEach(order => {
console.log(` - 订单${order.id}: collector=${order.collector}, collectorId=${order.collectorId}`);
});
}
} catch (e) {
console.log('输出:', output2);
}
conn.end();
});
});
}
} catch (e) {
console.log('解析错误:', e.message);
console.log('输出:', output);
conn.end();
}
});
});
});
conn.on('error', (err) => {
console.log('连接错误:', err.message);
});
conn.connect({
host: 'hs.yifenbao.cn',
port: 22,
username: 'root',
password: 'Torch1112'
});