gpt4 book ai didi

Django restframework、Django channel 、Ionic 2 - websocket 握手错误

转载 作者:行者123 更新时间:2023-12-04 21:35:24 27 4
gpt4 key购买 nike

我目前正在使用线程标题中提到的技术进行一个项目。

我在浏览器上运行了这一切(该应用程序托管在 heroku 上),但是当我尝试从我的 Ionic 2 应用程序连接到 websockets 时,我总是在建立握手时遇到错误。

2016-09-17T15:02:03.200133+00:00 app[web.1]: 2016-09-17 15:02:03,199 DEBUG    Connection http.response!uvRVDyvolYEG did not get successful WS handshake.

2016-09-17T15:02:03.200498+00:00 app[web.1]: 2016-09-17 15:02:03,200 DEBUG WebSocket closed before handshake established

2016-09-17T15:02:03.169206+00:00 heroku[router]: at=info method=GET path="/1/" host=musicmashup-jukebox.herokuapp.com request_id=c46960d7-bb8f-45bf-b8be-5a934c771d96 fwd="212.243.230.222" dyno=web.1 connect=0ms service=7ms status=400 bytes=74

现在一个想法是,这可能是 CORS 问题。所以我安装了 django-cors-middleware希望这可以解决问题 - 好吧,它没有。
但我认为该应用程序根本不会向 Daphne 服务器添加任何 header 。

目前我不知道问题是在客户端还是在服务器端。

有没有人遇到过类似的问题?

编辑:
发现websockets和CORS没有任何关系 Why is there no same-origin policy for WebSockets? Why can I connect to ws://localhost?
所以我的猜测是,服务器可能会拒绝客户端发送的原始 header 。我会看看我是否可以得到正在发送的标题

最佳答案

此问题已在 Daphne v.1.0.3 中修复
https://github.com/django/daphne/commit/07dd777ef11f5091931fbb22bdacb9e4aefea7da

如果使用,您还需要更新 channel 和 asgi-redis。

关于Django restframework、Django channel 、Ionic 2 - websocket 握手错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39548817/

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