Git Product home page Git Product logo

wxapp-socket-io's People

Contributors

fanweixiao avatar gongzili456 avatar miuchan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wxapp-socket-io's Issues

报502错误

我是这样写的

const io = require('./ws.js');
const news = io('wss://xxx.com/venice/v1/user/')

控制台报错

 WebSocket connection to 'wss://xxx.com/socket.io/?EIO=3&transport=websocket' failed: Error during WebSocket handshake: Unexpected response code: 502

不能传输object

当我后端发送类型为对象的值时,内部的decodePacket函数中的 data.charAt(0)为报错 , 由于源代码逻辑对我来说比较复杂,希望作者可以修复一下。感谢。

微信小程序使用时报错

微信小程序使用中,微信开发者工具上可以连接上无报错,但是在真机测试时,报错 TypeError:JSON.stringify cannot serialize cyclic structures. 如何解决?orz

默认通道能不能替换

小程序里面这样写是可以的,

wx.connectSocket({
       url: 'wss://xxxx.com/user/??EIO=3&transport=websocket',
 })

在socket.io的客户端是这样写的

io.connect('//xxxx.com',{path:'/user'});

在你这里应该咋写,写成?path=user也不管用啊,貌似加了个默认通道socket.io,
控制台报错,连接地址为

wss://xxx.com/socket.io/?path=/user/&EIO=3&transport=websocket'

这个了,

连接地址拼接失败

import io from 'wxapp-socket-io'
var socket = io('https://xxx.xxx.net/socket/socket.io') 

生成出来的地址不对,不写端口好像不行,而且端口后面的路径无法自己控制,怎么写都是生成:https://xxx.xxx.net:xxx/socket.io/?EIO=3&transport=websocket

web连接的demo是可以正常连接的:

var socket = io.connect('https://xxx.xxx.net', {path: "/socket/socket.io"});

求教

emit dose not work!

用的是demo中wxsocket.io里面的版本

const socket = io('wss://socket.example.com')

wx.onSocketOpen((res) => {
  //这样服务端没有收到消息
  socket.emit('foo', 'bar') 

  //这样服务端可以收到消息
  wx.sendSocketMessage({
      data: [4, 2, JSON.stringify(['foo', 'bar'])].join('')
  })
})

手动断开连接

this.engine.close is not a function.
将源码的 if (this.engine) this.engine.close()改成if (this.engine) this.engine.destroy()之后可以断开连接。但是再次 socket.connect()之后 掉线频率太快。

关于Demo的问题

建议Demo项目里添加使用Socket.IO官方的Chat Demo,因为这种方式下,开发者不需要再去搭建一个本地server,就可以直接测试看到交互效果了。

同时,现在的Demo里,还夹杂了与演示咱们wxapp-socket-io无关的一些代码,建议都去掉,这样会更简洁明了的讲述咱们项目的使用之方便~

socket query第二次连接时无法更新

代码如下,当第二次连接指定query时, socket无法更新

socket = io(socket_url + roomid, {
    query: "openid=" + openid + "&sessionid=" + sessionid,
    upgrade: false,
    transports: ['websocket']
});
socket.connect()

this.engine.close is not a function

WAService.js:1 thirdScriptError
this.engine.close is not a function;at onSocketMessage callback function
TypeError: this.engine.close is not a function
    at Manager.close.Manager.disconnect (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:394:38)
    at Manager.destroy (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:382:14)
    at Socket.destroy (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:1907:17)
    at Socket.close.Socket.disconnect (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:1892:14)
    at Socket.onpacket (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:1862:18)
    at Manager.<anonymous> (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:672:21)
    at Manager.Emitter.emit (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:615:26)
    at http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:272:18
    at Manager.decoder (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:1677:9)
    at Manager.ondata (http://1603736195.appservice.open.weixin.qq.com/vendor/socket.io/index.js:271:14)

建立socket中connected为false

小程序代码如下
var socket = io('http://192.168.3.88:8005/game',{query:param});
console.log('chat: ', socket)
socket.on('connect',function(data){ console.log('connect',data) }) socket.on('connected',function(data){ console.log('connected',data) })
打印结果:(connected=false, 可是服务器任然是保持连接的)
chat: Socket {io: Manager, nsp: "/game", id: 0, connected: false, disconnected: true…}

如何才能调用连接 并正确监听事件

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.