cocos2d-js 3 beta TCP请求问题

js貌似是不支持TCP连接的,据我所知,js可以进行HTTP、WebSocket这些协议的连接

那如果想直接做TCP的连接该怎么做呢?(请注意这里我想使用TCP短连接,所以不使用WebSocket)

求大神赐教

是否必须使用C++编写这部分代码,然后在js中调用C++?

请问怎么使用websocket,新手勿喷

使用:socket.io 这个库,你可以查一下

自顶一下,别沉啊,求大神解救啊~

http是tcp短连接啊,你如果不用http,那么可以用udp或者是socket tcp(websocket 在我看来其实就是socket tcp,只是websocket有自已的一些规则),只是socket要做的是连接上服务器,事情办完,马上主动断开,这就是短连接了

不用http是因为http的头太大了,就是想问问js怎么使用socket连tcp?能给个例子吗?

如果你不用websocket,那么cocos目前提供的js只有websocket这一个途径,除非你自已去扩充一个socket(c++里面加一个,然后jsb绑定,当然这个我也没有试过),目前我认为websocket不好的地方就是服务器端需要根据它的协议做握手以及解析它的数据帧(包头),它的这个包头是会占用一定的字节数(最大14个字节),其它的就与处理普通的socket一样了

如果是使用TCP长连接的话websocket是还可以,只握手一次,后面就是tcp通信了

但如果是想使用TCP短连接的话,每次请求还要握手一次就太浪费了,还不如直接用http。。。

看来只有自己写C++然后绑定了。。。

请教,native端可以直接使用websocket吗?浏览器外使用websocket吗?因为我是用cocos2d-js成native端的,求最佳方案

目前Cocos2d-JS中提供三种网络接口:

  1. XMLHttpRequest(短连接)
  2. WebSocket(长连接)
  3. SocketIO(长连接)

这三种都是全平台的,如果有其他需求,可以自己开发C++端然后绑定,不过在Web平台上应该够用了

可以的。文档里讲了,项目设置中勾选native socket模块就可以了