草庐IT

WEBSOCKET

全部标签

javascript - 如何在 Socket.io/express-sessions 中访问/保存授权事件的 session 数据?

我在node.js服务器上使用Socket.io和express4框架设置了一个websocket。我正在尝试在使用我的websocket时为我的用户实现授权步骤。当用户连接时,token将作为查询值传递给服务器。在服务器级别,我在数据库中查询与传递的token匹配的session。如果找到session,我会做一些其他检查以确保token未被劫持。问题session数据似乎在每次重新加载页面时都会被清除。或者服务器无法将sessionId链接到创建它的用户,因此每次它都会生成一个新session。我对“如果已设置”如何访问session变量感到困惑。我的代码的问题当用户重新加载他/她

javascript - 是否可以编写一个使用 web 套接字进行传输的 javascript SSH 客户端?

是否有可能使用像轨道网络套接字这样的东西作为传输层,用纯javascript编写一个基本的SSH客户端?我没有看到任何这方面的例子,但它似乎是一件好事。 最佳答案 可以查看Ajaxterm和rTerm,它使用它。我真的很喜欢Orbited并在我公司的一个内部系统(使用RabbitMQ)上使用它。应该可以从这些应用程序中获取概念并使用Orbited作为传输层,但我认为这不是它的最佳用例(因为任务是单用户而不是基于channel等)。 关于javascript-是否可以编写一个使用web套接

javascript - Socket.IO:断开连接时的 XHR 轮询延迟

我正在使用socket.io和node.js。由于在套接字IO识别XHR-Polling客户端已断开连接之前有几秒钟的延迟,我在跟踪哪些用户在线时遇到了问题。如果XHR-Polling客户端刷新页面,他们的新连接消息似乎先于他们的断开连接消息。这会在尝试跟踪哪些用户在线时造成混淆。一种解决方案是在服务器端检测传输方法并延迟XHR-Polling客户端的连接,以确保首先运行断开连接功能。有没有人有这方面的经验? 最佳答案 正如@davin和@jcolebrand在评论中指出的那样,存在的主要问题是不能仅依赖连接。用户离开页面后,网络设

javascript - node.js 和 socket.io。 websocket 的传输类型配置?

Thisquestionconcernssocket.ioversions我在两周内测试了nodejs和socket.io。当我开始时,我从客户端的socket.send(message)函数中得到了问题。我无法向服务器发送任何消息。但我仍然可以从服务器接收消息。当我找到服务器端的配置传输时,我解决了这个问题:socket.set('transports',['xhr-polling','jsonp-polling']);一切都很好。现在我也可以向服务器发送消息了。但是我还有个疑问为什么要配置transport。默认socket.io使用这样的websocket传输设置:socket.

javascript - Websockets 在 Chrome 中不工作 (wss) : “handshake was canceled”

我目前正在DockerCloud上开发Websocket应用程序。重新部署我的应用程序时,现在我总是收到此错误消息:WebSocketconnectionfailed:WebSocketopeninghandshakewascanceled查看数据框时,我看到一个包含此数据的帧:(Opcode-1)在研究这个问题时,似乎与SSL/证书等有关。一些解决方案包括添加自签名证书。令人困惑的是,相同的证书似乎适用于https但不适用于wss:此外,在使用其他浏览器进行测试时,我发现Safari运行良好。所以我确信服务器实际上是在正确的端口上使用正确的证书运行的。只有chrome似乎有问题。我知

javascript - 是否可以无缝重定向 websockets?

我知道可以通过反向代理(如Nginx、HAproxy等)传递请求,但我需要将请求重定向到同一域后缀中的另一台公共(public)服务器。IE。从wss://example.com到wss://ws1.example.com。这是一个例子:我需要重定向来自Nginx或Java的请求。是否可以组织?我需要在客户端处理重定向还是这段代码就足够了?varsocket=newWebSocket("wss://example.com");socket.onopen=function(){alert("Connectionestablished.");};socket.onclose=functio

javascript websocket onmessage event.data

使用JavaScriptWebSocket如何将event.data传出onMessage函数?vareventData=EventRequest("text");.....codes.....EventRequest=function(text){varsocket=newWebSocket('ws://localhost:8080/');websocket.onopen=function(evt){onOpen(evt);};websocket.onmessage=function(evt){onMessage(evt);};functiononOpen(evt){socket.s

javascript - “WebSocket.URL”已弃用。请改用 'WebSocket.url'

WebSocketconnectionto'ws://localhost:35729/livereload'failed:Errorinconnectionestablishment:net::ERR_CONNECTION_REFUSEDchromereload.js:9'WebSocket.URL'isdeprecated.Pleaseuse'WebSocket.url'instead.chromereload.js:12自从chrome更新到版本38后,我在我的chrome扩展程序中收到此错误消息。我不太确定这里发生了什么,但现在打开大多数东西会导致扩展程序崩溃。一开始我使用yeo

javascript - 使用 cowboy 和 MessagePack 通过 websocket 发送二进制数据

我正在尝试通过WebSocket从Cowboy向浏览器发送MessagePack编码的消息,但接收到的数据始终为空或无效。我可以将二进制数据从JS发送到我的牛仔处理程序,但反之则不行。我将Cowboy1.0.4与官方msgpack-erlang一起使用应用。我也用msgpack-lite对于我的浏览器内javascript。例子:websocket_handler:websocket_handle({text,>},Req,State)->%%sendsencodedmessagetoclient.Clientisunabletodecodeandfails{reply,{binary

javascript - 在 Angular 2 中的多个组件之间共享 WebSocket 数据的最佳方式?

我开始构建一个应用程序。有很多组件。他们每个人都需要来自1个webSocket的一部分数据。webSocket接收对象示例:每个Angular2组件都需要来自接收对象的1个字段。是否可以创建1个服务,连接到webSocket,接收数据并在所有组件之间共享?我认为这将是一个很好的解决方案。现在我正在使用下一种方法:getConfigCallback(){this.connectionSockets.telemetry=io(this.config.connections.telemetry);this.connectionSockets.controlFlow=newWebSocket(