Browse Source

清理server-example目录:移除调试和测试文件

pull/3/head
徐飞洋 2 months ago
parent
commit
4709de3213
  1. 87
      server-example/free-port.js
  2. 67
      server-example/list-users.js

87
server-example/free-port.js

@ -1,87 +0,0 @@
// 检查并释放被占用的端口
const { exec } = require('child_process');
const os = require('os');
// 要检查的端口
const PORT = 3001;
function killProcessOnPort(port) {
console.log(`开始检查端口 ${port} 的占用情况...`);
if (os.platform() === 'win32') {
// Windows系统
exec(`netstat -ano | findstr :${port}`, (error, stdout) => {
if (error) {
console.log(`端口 ${port} 未被占用`);
return;
}
const lines = stdout.trim().split('\n');
if (lines.length > 0) {
// 提取PID
const pid = lines[0].trim().split(/\s+/).pop();
console.log(`发现进程 ${pid} 占用端口 ${port}`);
// 杀死进程
exec(`taskkill /F /PID ${pid}`, (killError) => {
if (killError) {
console.error(`杀死进程 ${pid} 失败:`, killError.message);
} else {
console.log(`成功杀死进程 ${pid},端口 ${port} 已释放`);
}
});
} else {
console.log(`端口 ${port} 未被占用`);
}
});
} else {
// Linux/Mac系统
exec(`lsof -i :${port}`, (error, stdout) => {
if (error) {
console.log(`端口 ${port} 未被占用`);
return;
}
const lines = stdout.trim().split('\n');
if (lines.length > 1) {
// 提取PID
const pid = lines[1].trim().split(/\s+/)[1];
console.log(`发现进程 ${pid} 占用端口 ${port}`);
// 杀死进程
exec(`kill -9 ${pid}`, (killError) => {
if (killError) {
console.error(`杀死进程 ${pid} 失败:`, killError.message);
} else {
console.log(`成功杀死进程 ${pid},端口 ${port} 已释放`);
}
});
} else {
console.log(`端口 ${port} 未被占用`);
}
});
}
}
// 执行端口检查和释放
killProcessOnPort(PORT);
// 延迟2秒后再次启动服务器(如果是Windows系统)
setTimeout(() => {
if (os.platform() === 'win32') {
console.log('\n正在尝试重新启动服务器...');
const serverProcess = exec('node server-mysql.js');
serverProcess.stdout.on('data', (data) => {
console.log(`服务器输出: ${data}`);
});
serverProcess.stderr.on('data', (data) => {
console.error(`服务器错误: ${data}`);
});
serverProcess.on('close', (code) => {
console.log(`服务器进程退出,代码: ${code}`);
});
}
}, 2000);

67
server-example/list-users.js

@ -1,67 +0,0 @@
require('dotenv').config();
const mysql = require('mysql2/promise');
// 查询用户信息
async function listUsers() {
let connection = null;
try {
console.log('连接数据库...');
connection = await mysql.createConnection({
host: process.env.DB_HOST || 'localhost',
user: process.env.DB_USER || 'root',
password: process.env.DB_PASSWORD === undefined ? null : process.env.DB_PASSWORD,
database: process.env.DB_DATABASE || 'wechat_app',
port: process.env.DB_PORT || 3306,
timezone: '+08:00' // 设置时区为UTC+8
});
console.log('数据库连接成功\n');
// 查询users表结构
console.log('=== users表结构 ===');
const [columns] = await connection.execute(
'SHOW COLUMNS FROM users'
);
console.log('字段列表:', columns.map(col => col.Field).join(', '));
console.log();
// 查询前5个用户数据
console.log('=== 用户数据 (前5个) ===');
const [users] = await connection.execute(
'SELECT * FROM users LIMIT 5'
);
console.log(`数据库中有 ${users.length} 个用户记录`);
if (users.length > 0) {
users.forEach((user, index) => {
console.log(`${index + 1}. 用户数据:`, user);
});
// 查找可能的openid字段
const firstUser = users[0];
const possibleOpenIdFields = Object.keys(firstUser).filter(key =>
key.toLowerCase().includes('openid') || key.toLowerCase().includes('open_id')
);
if (possibleOpenIdFields.length > 0) {
console.log('\n=== 可能的openid字段 ===');
console.log('找到以下可能的openid字段:', possibleOpenIdFields.join(', '));
console.log('请使用其中一个有效的字段更新测试脚本');
} else {
console.log('\n未找到明显的openid字段,请检查users表结构后手动更新测试脚本');
}
} else {
console.log('\n数据库中没有用户记录');
}
} catch (error) {
console.error('查询过程中发生错误:', error);
} finally {
if (connection) {
await connection.end();
console.log('\n数据库连接已关闭');
}
}
}
// 运行查询
listUsers();
Loading…
Cancel
Save