用API接入的形式,嵌入ws连接有啥前置要求吗

lihaiboot 2023-3-5 402

请问一下用API接入的形式,嵌入ws连接有啥前置要求吗,另外看系统的那些东西能实现呢。

New Post (8)
  • weenfier 2023-3-6
    Quote 2Floor
    本人没这么开发过,说点想法吧:

    如果使用API接入形式,嵌入ws连接肯定没有问题,但有一点需要注意,WeLive使用Cookie记住访客,如果嵌入ws的方式连接不影响cookie,那这种二次开发应该比较容易。

    另外,你的问题比较抽象,不好回复。
  • wulinghui 2023-3-8
    Quote 3Floor
    直接连接就行是吗?  ws中有做什么鉴权校验吗?
  • wulinghui 2023-3-8
    Quote 4Floor
    我看连接需要是需要先发送
    x=6&a=8&gid=11383&fn=&au=0&aid=0&l=1&k=VndcFUqB&c=8795hfKAZ5NNdA5QW617gaIHrfbx2CyyZTEQLZfGFDcqBCkId7j/43Ipep9Pg6UMTihknU8/ku/q79lcug&fr=http://www.weensoft.cn/welive/&ag=Chrome 83.0.4103.14&mb=0
    这些内容是从哪里拿过来?  
  • weenfier 2023-3-8
    Quote 5Floor
    这些内容是从访客的浏览器回传给WeLive服务器的监听程序的。
  • wulinghui 2023-3-13
    Quote 6Floor
    我直接连ws,不传任何参数。一发消息就报错。 
    能否告诉我需要什么前置消息获得上面的这些参数吗?
  • wulinghui 2023-3-13
    Quote 7Floor
    我看guest.js中的代码如下: 是不是就是ws连接的流程代码?  
    ```
           welive.ws = new WebSocket(WS_HEAD + WS_HOST + ':'+ WS_PORT);

           welive.ws.onopen = function(){
                   welive.linked = 1; //websocket连接成功
                   welive.closeQuiet = 1; //连接成功后, websocket连接断开时不显示: 连接失败,请稍后重试
                   setTimeout(function(){weliveVerify();}, 100); //连接成功后, 小延时再验证用户, 否则IE下刷新时发送数据失败
           };

           welive.ws.onclose = function(){weliveClose();};
           welive.ws.onmessage = function(get){weliveParseOut(get);};
    ```
  • weenfier 2023-3-13
    Quote 8Floor
    服务器端的监听程序当然要验证用户浏览器通过ws发来的信息,必须是这样的,否则就乱了套。

    4楼的这些信息,从welive接入的JS文件开始分析很容易获取。

    服务器端的验证程度看你使用WeLive的什么版本了?
  • wulinghui 2023-3-14
    Quote 9Floor
    ok,也就是说不同的版本验证的内容还是不一样的吧。 具体还是以代码为准的。
Back
Create New Thread