收藏
回答

小程序TCP通信怎么通过域名连接?

1. 服务器域名配置

每个微信小程序需要事先设置通讯域名,小程序只可以跟指定的域名进行网络通信。包括普通 HTTPS 请求(wx.request)、上传文件(wx.uploadFile)、下载文件(wx.downloadFile) 和 WebSocket 通信(wx.connectSocket)。

从基础库 2.4.0 开始,网络接口允许与局域网 IP 通信,但要注意 不允许与本机 IP 通信

从 2.7.0 开始,提供了 UDP 通信(wx.createUDPSocket)。

从 2.18.0 开始,提供了 TCP 连接(wx.createTCPSocket),只允许与同个局域网内的非本机 IP 以及配置过的服务器域名通信。

如使用微信云托管作为后端服务,则可无需配置通讯域名(在小程序内通过callContainerconnectContainer通过微信私有协议向云托管服务发起 HTTPS 调用和 WebSocket 通信)。


文档里写着2.18.0开始允许和配置过的服务器域名通信,我在后台配置了服务器的域名(已经备案),在address字段传入域名,还是 err: invalid address

不会是只是文档说说,还不支持这连接吧?3.0的版本都出来了


this.tcp_sock.connect({
  address'xx.xx.cn',
  port: _G.CLOUD_TCP_PORT,
});
回答关注问题邀请回答
收藏

1 个回答

  • จุ๊บ
    จุ๊บ
    2023-08-25

    看你自己服务器是否配置了 tcp 协议请求;实际测试没问题

    2023-08-25
    有用 1
    回复 1
    • 。
      2023-09-01
      过了几天,发现又可以了(代码什么也没动过)。。。。不知是不是后台设置url后要等一两天才生效。。。。
      2023-09-01
      回复
登录 后发表内容