You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESP8266通过ArduinoWebSockets连接Fly.io的Socket.io服务器的正确端口是什么?

解决ESP8266 Socket.io连接Fly.io服务器的端口问题

Fly.io的端口转发逻辑和Heroku类似,但需要注意外部访问的标准端口使用:

  • 对于未加密的WebSocket(ws协议),ESP8266代码里应该使用端口80,修改你的初始化代码为:
    webSocket.begin("sbca-server.fly.dev", 80);
    
  • 对于加密的WebSocket(wss协议,更安全),需要使用端口443,并改用SSL初始化:
    webSocket.beginSSL("sbca-server.fly.dev", 443);
    

额外注意事项:

  • 你的Node.js服务器代码必须监听process.env.PORT环境变量指定的端口,而不是硬编码端口号,示例代码:
    const io = require('socket.io')();
    const port = process.env.PORT || 3000;
    io.listen(port);
    
    Fly.io会自动将外部80/443端口的流量转发到这个内部端口,不需要手动配置端口映射。
  • 确认你的Fly.io应用已正常运行,可以通过fly status命令在本地终端查看应用状态。
  • 排查ESP8266的网络连通性:可以通过串口打印DNS解析结果,或者尝试在设备所在网络下访问sbca-server.fly.dev,确保网络没有拦截相关端口的流量。

内容的提问来源于stack exchange,提问作者Eric Echemane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 19:25:22