// 客户管理模块验证脚本 const http = require('http'); function request(options, body) { return 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: data })); }); req.on('error', reject); if (body) req.write(body); req.end(); }); } (async () => { console.log('=== 步骤 1: 登录获取 admin token ==='); const loginRes = await request( { hostname: '127.0.0.1', port: 7001, path: '/api/auth/login', method: 'POST', headers: { 'Content-Type': 'application/json' }, }, JSON.stringify({ username: 'admin', password: 'admin123456' }) ); const loginData = JSON.parse(loginRes.body); console.log('HTTP:', loginRes.statusCode, '| code:', loginData.code, '| message:', loginData.message); console.log('roles:', loginData.data.roles); console.log('menus count:', loginData.data.menus.length); console.log('top menu[0]:', loginData.data.menus[0].menuName, 'type:', loginData.data.menus[0].menuType, 'children:', loginData.data.menus[0].children?.length); const token = loginData.data.accessToken; console.log('token 长度:', token.length); console.log('token 前 80 字符:', token.substring(0, 80)); const authHeader = `Bearer ${token}`; console.log('Authorization header 长度:', authHeader.length); console.log('\n=== 步骤 2: 调用 GET /api/customers 客户列表 ==='); console.log('发送的 Authorization:', authHeader.substring(0, 100) + '...'); const listRes = await request({ hostname: '127.0.0.1', port: 7001, path: '/api/customers?page=1&pageSize=10', method: 'GET', headers: { Authorization: authHeader }, }); console.log('HTTP:', listRes.statusCode); console.log('Body:', listRes.body); console.log('\n=== 步骤 3: 调用 GET /api/customers/options/all 精简列表 ==='); const optRes = await request({ hostname: '127.0.0.1', port: 7001, path: '/api/customers/options/all', method: 'GET', headers: { Authorization: `Bearer ${token}` }, }); console.log('HTTP:', optRes.statusCode); console.log('Body:', optRes.body.substring(0, 500)); console.log('\n=== 步骤 4: 调用 GET /api/customer-departments 部门列表 ==='); const depRes = await request({ hostname: '127.0.0.1', port: 7001, path: '/api/customer-departments?page=1&pageSize=10', method: 'GET', headers: { Authorization: `Bearer ${token}` }, }); console.log('HTTP:', depRes.statusCode); console.log('Body:', depRes.body); console.log('\n=== 步骤 5: 调用 GET /api/customer-accounts 账号列表 ==='); const accRes = await request({ hostname: '127.0.0.1', port: 7001, path: '/api/customer-accounts?page=1&pageSize=10', method: 'GET', headers: { Authorization: `Bearer ${token}` }, }); console.log('HTTP:', accRes.statusCode); console.log('Body:', accRes.body); console.log('\n=== 步骤 6: 验证无 token 访问 → 401 ==='); const noTokenRes = await request({ hostname: '127.0.0.1', port: 7001, path: '/api/customers', method: 'GET', }); console.log('HTTP:', noTokenRes.statusCode, '| Body:', noTokenRes.body); })().catch((err) => { console.error('脚本异常:', err.message); process.exit(1); });