我正在部署React应用程序,但是通过https访问页面时遇到一个奇怪的错误。
当我通过https访问页面时,收到以下错误:
SecurityError:无法构造“ WebSocket”:可能不会从通过HTTPS加载的页面启动不安全的WebSocket连接。
但是,当我通过http转到该页面时,效果很好。
问题是,据我所知,我没有使用websockets。我在代码中进行了搜索,以查看是否有对HTTP的请求,应该是https或ws:而不是wss:的请求,但是我什么都没看到。
有人遇到过吗?
我包括package.json文件的副本。让我知道是否需要我上载任何其他代码来帮助调试。
提前致谢。
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.3.2",
"@testing-library/user-event": "^7.1.2",
"baffle": "^0.3.6",
"cross-env": "^6.0.3",
"react": "^16.12.0",
"react-dom": "^16.12.0",
"react-player": "^1.14.2",
"react-router-dom": "^5.1.2",
"react-scripts": "3.3.0",
"react-typist": "^2.0.5",
"webpack-hot-dev-clients": "^2.0.2"
},
"scripts": {
"start": "cross-env react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
这里有很多答案确实可以解决问题,但是自从我问这个问题以来,我找到的最简单的方法是将npm包服务添加到您的依赖项中。
yarn add serve
要么 npm i serve
然后将您的启动脚本替换为以下内容:
"scripts": {
"start": "serve -s build",
}
实际上,这直接来自create-react-app 文档
问题内容: 我迷上了Firefox。我无法使Websocket正常工作。我使用TornadoWebsocket,并通过以下代码对其进行了初始化: 然后像这样在Javascript端初始化它: 这段代码在Chrome上运行良好,同时我自己创建了证书并在HTTPS下运行页面。但是Firefox一直在说: 我用谷歌搜索,发现了太多想法,但没有一个对我有用:( 任何帮助将不胜感激。 问题答案: 我通过Pr
我有一个页面,上面有一些D3 javascript。这个页面位于HTTPS网站内,但证书是自签名的。 当我加载页面时,我的D3可视化没有显示,我得到了错误: 混合内容:页面位于'https://integration.jsite.com/data/vis'通过HTTPS加载,但请求了不安全的XMLHttpRequestendpoint'http://integration.jsite.com/da
问题内容: 我有一个使用socket.IO的node.js应用程序。它可以在http上正常工作,但是当尝试通过https连接到套接字时,没有任何反应。 这是代码的一部分: 和功能: 客户端连接如下: 正如我说的,在http上一切正常,但是在https上连接会给我“连接被中断”。我究竟做错了什么? 问题答案: 您不能像服务器那样初始化服务器。您必须启动一个单独的https服务器,然后将socket.
问题内容: 摘要 我在IE 7,8,9的HTTPS上使用@ font-face遇到了问题-它根本没有加载。不管包含的HTML页面是否托管在HTTPS上都没有关系, 当我尝试通过HTTP加载EOT字体时,它可以工作,而HTTPS则不能 。有人看到过这种行为吗? 托管字体的服务器正在发送正确的content-type =“ application / vnd.ms-fontobject” 我尝试了多种
我尝试用JSF 2.3.3(Glassfish实现)测试新的WebSocket功能。我使用 Tomcat 9.0.1 作为 Web 服务器并遵循本指南(https://javaserverfaces.github.io/whats-new-in-jsf23.html) 我创建了一个托管bean: 更新的index.xhtml: 并更新了web.xml: 不幸的是,Tomcat加载应用程序失败,出现
错误:无法启动连接:错误:WebSocket无法连接。在服务器上找不到连接,endpoint可能不是信号器endpoint,服务器上不存在连接ID,或者存在阻止WebSocket的代理。如果有多台服务器,请检查是否启用了粘性会话。 WebSocketTransport.js:49WebSocket连接到“ws://xxxxxx/生产/网络服务/集线器/spreadhub”失败: Angular.t