gpt4 book ai didi

ruby-on-rails - 尝试连接到 Actioncable 服务器时出现 websocket 错误代码 1006

转载 作者:行者123 更新时间:2023-12-03 17:38:15 25 4
gpt4 key购买 nike

我正在使用 Nativescript/Angular 2 构建一个应用程序,并且我也在使用 javascript library使用 websockets 将其与 Actioncable Rails 应用程序连接起来。
尝试建立连接时,我在 Nativescript 日志控制台上收到 websocket 错误代码 1006,并且连接被关闭。

我注意到初始 HTTP(握手)请求在 header (actioncable-v1-json,actioncable-unsupported)上发送了 Sec-WebSocket-Protocol 的两个值,但响应中的 header 只有一个 Sec-WebSocket-Protocol 值缺少“actioncable-v1-json”和“actioncable-unsupported”。

我相信这个错误是由于响应中缺少协议(protocol)而发生的。
有谁知道如何将此 header (不支持 actioncable)添加到握手响应中?或任何其他导致此错误的想法?

rails 日志中没有错误,它只是连接然后断开连接:

Started GET "/v1/cable/" [WebSocket] for 192.168.1.8 at 2017-04-02 17:04:06 -0700
Successfully upgraded to WebSocket (REQUEST_METHOD: GET, HTTP_CONNECTION: upgrade, HTTP_UPGRADE: websocket)
Finished "/v1/cable/" [WebSocket] for 192.168.1.8 at 2017-04-02 17:04:06 -0700

Nativescript 控制台上显示的错误消息是这样的:
CONSOLE LOG file:///app/tns_modules/nativescript-actioncable/lib/action_cable.js:46:33: [ActionCable] Opening WebSocket, current state is null, subprotocols: actioncable-v1-json,actioncable-unsupported 1491179483038
CONSOLE LOG file:///app/tns_modules/nativescript-actioncable/lib/action_cable.js:46:33: [ActionCable] ConnectionMonitor started. pollInterval = 3000 ms 1491179483042
CONSOLE LOG file:///app/tns_modules/nativescript-actioncable/lib/action_cable.js:46:33: [ActionCable] Socket was closed because: code: 1006 1491179483109

谢谢

最佳答案

我遇到了这个问题,问题是 cable.yml 配置。

我们注意到暂存环境的 url 具有以下值:

url: <%= ENV.fetch("REDIS_URL") { "redis://localhost:6379/1" } %>

删除该值和实际上其他值为我们修复了它。

新的 cable.yml 暂存配置:
staging:
adapter: redis

在职的!

关于ruby-on-rails - 尝试连接到 Actioncable 服务器时出现 websocket 错误代码 1006,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43175006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com