收藏
回答

关于WebSocket的疑问和建议

问题模块
API和组件




我自己搭建的WebSocket服务器,在微信开发工具中测试成功,但在苹果及安卓真机上测试都不成功,我的地址加了端口,不知道是不是这个原因,但文档中只是wx.request中提到url中不能有端口,而wx.connectSocket没有说不能带端口。

另外,真机上即使没连接成功,wx.connectSocket方法 有时 却执行了success回调函数。注,连接成功,服务端都有日志记录,而真机连接没有日志记录,所以确定是没有连接成功,而且后续发送消息也不成功。

=============

建议,所有请求都可以带端口,有时候由于一些原因,有必要使用其他端口。

=============

HTML5原生的WebSocket接口就很好用,但小程序中似乎不让使用,提示WebSocket is not a constructor。


最后一次编辑于  2017-02-10  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

9 个回答

  • logic
    logic
    2017-02-10

    下面是服务器端的日志记录,用微信开发工具配合微信的WebSocket接口,用其他浏览器配合HTML5的WebSocket接口,无论是连接、断开、发送消息,都有日志,而唯独使用苹果和安卓真机没有记录。

    ==============

    2017-02-10 22:05:13 WebSocket服务停止

    2017-02-10 22:05:14 WebSocket服务启动

    2017-02-10 22:05:14 WebSocket服务端初始化成功,IP:any,端口:2012

    2017-02-10 22:05:14 开启WebSocket服务侦听成功

    2017-02-10 22:05:41 客户端:171.208.153.101:4420连接服务器

    2017-02-10 22:05:44 接收到来自客户端:171.208.153.101:4420的消息:Hello World

    2017-02-10 22:06:27 客户端:171.208.153.101:4494连接服务器

    2017-02-10 22:06:31 接收到来自客户端:171.208.153.101:4494的消息:测试消息

    2017-02-10 22:06:33 客户端:171.208.153.101:4494与服务器断开连接,原因:ClientClosing

    2017-02-10 22:06:38 客户端:171.208.153.101:4420与服务器断开连接,原因:ClientClosing



    2017-02-10
    赞同
    回复
  • 融通
    融通
    2017-02-10

    微信小程序开发交流学习群: 537818156,欢迎小程序发烧友加入。

    2017-02-10
    赞同
    回复
  • 天下雪|回溯
    天下雪|回溯
    2017-02-11

    参考:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=1899

    2017-02-11
    赞同
    回复
  • logic
    logic
    2017-02-11

    这个我知道,ws/wss,分别和http/https的默认端口一样,即80/443,关键是,服务器443端口已经被占用,需要更改端口。

    为什么要限制端口呢?

    2017-02-11
    赞同
    回复
  • pubby
    pubby
    2017-02-12

    @logic  可以同时使用 80/443的啊,你用ws://example.com/wspath/


    nginx里面,把/wspath/   proxy_pass到后端websocket服务器

    2017-02-12
    赞同
    回复
  • logic
    logic
    2017-02-13

    回五楼,你不清楚我的服务器环境,我的WebSocket没有寄宿在WEB服务器(IIS),而是寄宿在windows服务,用的是SuperSocket.WebSocket(SuperWebSocket)

    2017-02-13
    赞同
    回复
  • logic
    logic
    2017-02-13

    再回五楼,将WebSocket整合在web中,和http/https共用端口,我也做出来了的,但我现在要做成windows服务

    2017-02-13
    赞同
    回复
  • Alan
    Alan
    2017-03-01

    请问你用的SuperWebSocket是如何配置使用TLS1.2协议的 ,我用的Fleck做的websocket服务器,一切都正常,但是superwebsocket在手机微信客户端连接不上

    2017-03-01
    赞同
    回复
  • hwencc
    hwencc
    2017-03-13

    楼主你好,请问你的问题解决了吗?

    2017-03-13
    赞同
    回复