新合约场景下基础CRUD失效,Postman请求超时求助
排查Node.js远程服务请求超时问题
基础验证步骤
- 先在服务器本地测试端点:用
curl http://localhost:你的端口/端点路径(Linux)或者PowerShell的Invoke-WebRequest http://localhost:你的端口/端点路径(Windows),确认服务能正常返回响应,排除服务本身的逻辑问题。 - 检查服务监听地址:执行
netstat -tulpn | grep 你的端口(Linux)或netstat -ano | findstr 你的端口(Windows),确认Node.js进程监听的是0.0.0.0(允许所有IP访问),而不是127.0.0.1(仅本地可访问)。
防火墙相关排查
- 服务器本地防火墙:
- Linux系统:执行
ufw status查看规则,确认目标端口的入站请求已被允许;如果用iptables,执行iptables -L -n | grep 你的端口检查是否有放行规则。 - Windows系统:打开「Windows Defender防火墙高级设置」,查看入站规则,确认已创建允许目标端口的规则,且规则处于启用状态。
- Linux系统:执行
- 客户网络边界防火墙:
客户确认的端口开放可能仅针对服务器本地防火墙,需让客户检查网络出口的硬件防火墙/路由器,确认:- 目标端口的入站流量已被放行
- 你的设备公网IP不在防火墙的黑名单中,或者已被加入白名单(部分企业网络会限制外部IP访问内部服务)
网络连通性测试
- 在你的设备上执行
ping 服务器公网IP,验证基础网络可达性(如果ping不通,可能是防火墙拦截了ICMP包,需进一步测试)。 - 用
telnet 服务器公网IP 你的端口测试端口连通性:- 若提示「连接超时」:基本可判定是防火墙(本地或边界)拦截了请求
- 若提示「连接被拒绝」:大概率是服务未正确监听端口,或服务器本地防火墙未开放端口
临时验证方案
让客户临时关闭服务器本地防火墙(仅用于测试,测试后务必重新开启),再用Postman发送请求:
- 若请求成功:问题出在服务器本地防火墙的规则配置
- 若仍超时:问题大概率在客户网络的边界防火墙
内容的提问来源于stack exchange,提问作者John Hurley
相关产品推荐
相关产品推荐

