如何从CMD向Node.js服务器发送数据?
如何通过CMD登录脚本向Node.js服务器上报用户与设备信息
当然可以实现!我来给你一步步拆解具体方案,不管你用批处理(.bat/.cmd)还是PowerShell登录脚本,都能轻松把用户和设备信息上报到你的Node.js服务器。
第一步:搭建Node.js接收服务器
我推荐用Express框架来快速实现接收上报的接口,它轻量且容易上手:
- 先初始化Node.js项目并安装Express:
mkdir login-report-server && cd login-report-server npm init -y npm install express
- 创建
server.js文件,写入以下代码:
const express = require('express'); const fs = require('fs'); const app = express(); const port = 3000; // 解析JSON格式的请求体 app.use(express.json()); // 处理登录上报的接口 app.post('/report-login', (req, res) => { const { username, deviceName } = req.body; // 打印上报信息到控制台 console.log(`[${new Date().toLocaleString()}] 登录上报:用户=${username},设备=${deviceName}`); // 可选:把数据写入日志文件持久化 const logLine = `${new Date().toISOString()} - 用户:${username},设备:${deviceName}\n`; fs.appendFileSync('login-logs.txt', logLine, 'utf8'); // 返回成功响应给客户端 res.status(200).send('上报成功'); }); // 启动服务器 app.listen(port, () => { console.log(`上报服务器已启动,监听端口:${port}`); });
- 启动服务器:
node server.js
第二步:编写登录脚本(CMD/PowerShell)
根据你公司登录脚本的类型,选择对应的实现方式:
方式一:批处理脚本(.bat/.cmd)
Windows 10及以上系统默认自带curl命令,直接用它发送POST请求:
@echo off :: 获取当前登录用户和设备名称 set "CURRENT_USER=%username%" set "DEVICE_NAME=%computername%" :: 发送上报请求到Node.js服务器 curl -X POST ^ http://你的服务器IP地址:3000/report-login ^ -H "Content-Type: application/json" ^ -d "{\"username\":\"%CURRENT_USER%\",\"deviceName\":\"%DEVICE_NAME%\"}"
方式二:PowerShell脚本
如果你的登录环境支持PowerShell,这种方式更适合处理含特殊字符的用户名/设备名:
# 获取系统环境变量中的用户和设备名 $username = $env:USERNAME $deviceName = $env:COMPUTERNAME # 构造请求体并转为JSON格式 $requestBody = @{ username = $username deviceName = $deviceName } | ConvertTo-Json # 发送POST请求到服务器 try { Invoke-RestMethod -Uri "http://你的服务器IP地址:3000/report-login" -Method Post -Body $requestBody -ContentType "application/json" Write-Host "登录信息上报成功" } catch { Write-Host "上报失败:$_" }
关键注意事项
- 网络可达性:确保所有客户端电脑能访问到你的Node.js服务器(同一局域网内用内网IP,公网环境用域名/公网IP)
- 防火墙配置:服务器端需要开放对应的端口(比如示例中的3000),避免被防火墙拦截
- 加密传输:如果涉及敏感信息,建议配置HTTPS(给服务器添加SSL证书,请求改用
https://) - 脚本容错:在登录脚本中添加错误处理逻辑,避免因网络问题导致登录流程卡住
内容的提问来源于stack exchange,提问作者Patrick Langkau
相关产品推荐
相关产品推荐

