javascript - 亚马逊 websocket API 网关的 websocket 客户端在 safari 和 firefox 中工作,但在 chrome 中不工作
问题描述
我有一个最小的 WebSocket 客户端。我用来连接 Amazon WebSocket API 网关。它在 safari 和 firefox 中正常工作。
function myFunction() {
var token = <token>;
var webSocket = new WebSocket("wss://ws-api.execute-api.us-east-2.amazonaws.com/<stage>", token);
webSocket.onopen = function (event) {
console.log("i")
};
当我尝试通过 chrome 连接时,出现以下错误
WebSocket 连接
<host>
失败
Safari 中的标题:
Pragma: no-cache
Connection: Upgrade
Host: <host>
Origin: null
Sec-WebSocket-Protocol: <token>
Cache-Control: no-cache
Sec-WebSocket-Key: <key>
Sec-WebSocket-Version: 13
Sec-WebSocket-Extensions: x-webkit-deflate-frame
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.3 Safari/605.1.15
chrome中的标题:
Accept-Encoding: gzip, deflate, br
Accept-Language: en-GB,en-US;q=0.9,en;q=0.8
Cache-Control: no-cache
Connection: Upgrade
Host: <host>
Origin: null
Pragma: no-cache
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
Sec-WebSocket-Key: <key>
Sec-WebSocket-Protocol: <token>
Sec-WebSocket-Version: 13
Upgrade: websocket
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36
解决方案
推荐阅读
- javascript - SyntaxError:使用 Firebase 时出现意外的标识符
- python - 将字符串转换为字典
- javascript - ActionCodeSettings 未在电子邮件发送的链接中更新
- android - 在 Firebase 文档中的列表开头插入新的孩子
- excel - VB.Net COMException 尝试将数据从一个 Excel 文档粘贴到另一个
- flutter - 如何减少 Flutter Web 应用程序的加载时间
- php - 如何在 woocommerce 计费字段之间插入元素?
- selenium-webdriver - 范围报告版本 4 - 为所有已执行的测试用例创建两个范围报告而不是一个 html 报告
- python - 为什么这条sql语句超级慢?
- javascript - 获取并写入 js 文件中的 json 文档