开始之前

本篇只处理尚未建立连接的情况。如果已经 OPEN 后断开,应转到连接中断教程。先准备自己控制的测试服务,记录一次失败的时间、完整路径及网页来源,不要把生产凭据放进测试 URL。

边看边操作在 WebSocket 测试 中打开实际工作区
01

确认使用可测试的 WSS 端点

在 WebSocket 工具里填入实际地址。ParseNest 使用 HTTPS,工具会拒绝 ws://;把协议文字改成 wss:// 并不会自动让目标服务器具备 TLS。

示例
wss://your-test-host.example/ws
02

只连接,先不发送业务消息

打开浏览器开发者工具的 Network 和 Console,再点击连接。预期成功状态为 OPEN;如果始终未打开,先保存握手观察结果,而不是反复发送消息。

03

按 HTTP 观察结果定位

HTTP/1.1 升级成功通常返回 101。404 优先核对代理路径与上游路由;401/403 结合鉴权和 Origin 日志分析;502 则查看代理到上游的连接。浏览器 error 事件不一定暴露状态码,查不到时要看服务器日志。

04

修改一处后重复同样测试

对照相同地址和时间窗口复测。若是 Nginx 代理,检查适用于当前版本的 HTTP 升级转发配置,再在部署环境执行 nginx -t;ParseNest Nginx 检查只提供静态提示,不会加载服务器上的 include 文件。

最小排查记录

把连不上与连上后出错分开记录,便于和后端同事复现。下面只用于整理观察,不是握手报文。

CODE
目标:wss://自己的测试域名/ws
页面来源:https://parsenest.com
时间:记录当地时间及所在时区
观察:是否 OPEN;DevTools 状态;代理日志对应行
改动:每轮只记录一个变量

不要把 CORS 当成通用修复

浏览器的 WebSocket 握手有 Origin;目标服务需要按自身规则决定是否允许。随意增加 Access-Control-Allow-Origin 不能修复错误路由、证书问题或应用的 Origin 拒绝。

代理参考

检查当前运行版本对应的代理文档;静态配置审查通过后,仍需验证真实握手。

浏览器与工具限制

测试工具由当前浏览器直连目标服务,需要你拥有可测试的 WSS 端点。它不代理连接、不提供任意握手请求头,也没有自动重连或自动心跳。URL 示例均是占位符;只有目标服务支持示例应用消息时,才能期待相应回应。

要点总结
  • 先判断是否真正到达 OPEN。
  • 错误事件本身不足以定位全部握手故障。
  • 代理静态检查通过后仍需做真实连接测试。