问题标签 [ws]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
714 浏览

node.js - 为什么我们在 nodejs 上的 javascript 中将 http 服务器传递给 websocket 实例?

类似代码的确切含​​义是什么 var WebSocketServer = require("ws").Server, express = require("express"), http = require("http"), app = express(), server = http.createServer(app); var wss = new WebSocketServer({server: server});?那到底在做什么 - 为什么需要给 websocket 服务器一个 http 服务器?

0 投票
2 回答
226 浏览

node.js - 使用 ws WebSocket 进行身份验证

我正在使用ws webSocket(不能使用 socket.io),我对它有点陌生。我知道它是如何工作的,但不完全了解一些事情。

  1. 如何使用 jwt 进行身份验证?文档说使用事件是正确的upgrade方法,但是当客户端连接时,upgrade函数中的代码没有运行。

  2. 添加事件类型的正确方法是什么?在 socket.io 中,可以使用client.on('eventType', function). 什么是 webSocket ws 等价物?

  3. 何时以及为什么会在 webSocket ws 中使用路径?

更新

更新事件不会在我这边被触发。这是我的代码:

文件 1

文件 2

0 投票
0 回答
1287 浏览

node.js - 如何将 webSocket 客户端 obj 存储在 redis 数据库上

我想在服务器重新启动时保留websocket ws客户端连接。似乎最快的方法是使用redis。我不太确定我该怎么做,因为 redis 不接受对象(即 ws 客户端)。我如何将 ws 客户端存储到 redis 上?

PS我不能使用socket.io。我只能使用 webSocket

0 投票
1 回答
521 浏览

java - Eclipse 得到“IWAB0014E 发生意外异常”。当我尝试创建一个肥皂客户端时

我正在尝试创建一个肥皂网络服务客户端,当我转到File > New > Other > WebServices > WebServiceClient时。

我收到此错误:

我正在使用 Eclipse 2019.09 和 apache cxf2.x V3.3.5 以及 GlassFish 5.0.1 和 jdk 8。我在 Eclipse 的首选项中添加了 apache 运行时。我搜索了分配,但现有的解决方案都没有解决我的问题。提前致谢。

0 投票
0 回答
20 浏览

javascript - 即插即用 WSS 服务器

我的计划是在 WSS 上建立一个小型文件共享 P2P 网络,因为这样浏览器就有可能直接连接到对等点并且它们可以窃取。但是我遇到了一个问题,作为一个普通的 P2P 网络,对等点是“即插即用”的,你只需下载客户端并双击打开它,也许第二天你就可以卸载它,但是 Web Secure Sockets 需要 CA 签名的证书这将在各个方面造成很多问题。

我认为有一些解决方案:

使用letsencrypt并在安装时自动签署证书。但是letsencrypt不支持IP签名,所以用户需要一个域,这是一个比签名证书更糟糕的问题。

使用安装时生成的自签名证书。浏览器的主要部分会产生非常吓人的警告,有些浏览器甚至不允许这样做。

使用不加密的 WS。理论上这对安全性有好处,这个 P2P 协议有自己的加密,但是浏览器会发出一些警告作为“混合内容”,并且可能在未来纯 HTTP 和 WS 将被视为自签名证书。

有什么推荐吗?很奇怪,对于简单的伪 tcp 连接,不存在公众接受的解决方案。我说公众接受是因为普通的 WS 可以像普通的 TCP 一样做到这一点,但现在浏览器以一种非常糟糕的方式看待它。

0 投票
1 回答
2204 浏览

node.js - 多个 socket.io 服务器共享一个 HTTP/S 服务器

使用 ws,Node.js WebSocket 库,可以让多个服务器共享一个 HTTP/S 服务器

是否可以对 socket.io 做同样的事情?

我需要在同一个 HTTP 服务器上有两台 WebSocket 服务器,一台用于 socket.io,另一台用于 Apollo 订阅。我可以使用 Websocket 服务器设置 Apollo 订阅服务器,但不适用于 socket.io,socket.io 只接受 HTTP 服务器。

我想在做这样的事情:

它适用于 Graphql 订阅,但不适用于 socket.io。

0 投票
0 回答
124 浏览

javascript - Arduino websocket 需要使用 6 年前制作的节点“express”和“ws”进行更新

六年前,(使用 ws 版本 0.4.32 现在我们使用 7.2.1 ),我有一个很棒的小websocket ,它在http://repl.it上运行,并将 Particle Photon 连接到网页,交互速度非常快 < 10 ms每个命令。我现在需要在这里更新我的 Arduinos 新 github代码。问题是我不知道 Arduino 应该回复什么节点 websocket 来完成连接。有什么建议么?

这曾经奏效。(注意:我会随机生成 Sec-WebSocket-Key)

我现在在Gitpod.io上运行我最新的 index.js 一切正常,但我对 Arduino 应该发送到 websocket 以启动连接的内容感到困惑。有没有人有任何想法?

0 投票
1 回答
3032 浏览

node.js - 连接到 websockets NodeJS Express 服务器时出错

我有一个配置了 websockets 的快速服务器:

它按预期运行:

我有一个客户:

它错误:

在客户端中,我还尝试使用 http 进行 Web 套接字连接。

但它会引发同样的错误。

为什么客户端在连接到服务器时出错?

0 投票
1 回答
120 浏览

javascript - Heroku 上托管的 Websocket 服务器“在哪里”?

我正在尝试在我的 heroku 应用程序上托管一个 Websocket 服务器。已经有一个 GraphQL 服务器正在运行,但我认为这不是我的问题的原因。
所以我的服务器是这样启动的

没有错误,但是当我尝试在浏览器中连接到服务器时,就像这样:

我收到错误 404。
所以我的问题是,ws 服务器的路径是什么,所以我可以连接到它吗?
谢谢

0 投票
0 回答
37 浏览

node.js - Websocket 损坏但仍收到 ping 消息

我正在使用 nodejs ws 模块来实现 websockets。套接字坏了,但我继续收到 ping 消息。我已将心跳功能配置为在损坏时自动关闭并重新启动,但由于 ping 消息不断出现,套接字重新启动没有触发。

尽管套接字被破坏,为什么继续收到 ping 消息的任何原因?