解决此网络套接字问题的正确方法?

问题描述 投票:0回答:1

我已将基本的测试React应用程序部署到Google Cloud Provider,但在https:// {my-app} .appspot.com /上返回以下错误:

SecurityError:无法构造'WebSocket':不安全的WebSocket可能无法通过HTTPS加载的页面启动连接。

我发现了此问题和PR:

https://github.com/facebook/create-react-app/issues/8075https://github.com/facebook/create-react-app/pull/8079

以下文章引用了这两个URL:

https://medium.com/@sydbails/create-react-app-websocket-error-and-solution-you-re-welcome-7ba9c2f48546

本文的作者提到了直接在以下位置更改某些代码的变通办法:

node_modules> react-dev-utils> webpackHotDevClient.js

但是根据我在本文第二个URL中提供的PR,是否不存在解决此问题的PR?那么,为什么作者更改了node_module代码?但是即使使用作者提到的解决方法,在部署环境中也会返回以下错误:

错误:服务器错误服务器遇到临时错误,并且可能未完成您的请求。请在30秒后重试。

我对此问题应用PR修复的正确方法是什么?

reactjs
1个回答
0
投票

错误告诉您您的问题。您的网站托管在https上,因此浏览器将不允许您对http或ws内容进行任何API或websocket调用,因为它不安全。您需要使用基于wss协议的SSL来托管websocket服务器,然后您的代码才能进行调用。否则通过http而不是https(不好的主意)托管您的网站。阅读此Difference between ws and wss?

© www.soinside.com 2019 - 2024. All rights reserved.