首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >勇敢的浏览器屏蔽阻止我的Websocket

勇敢的浏览器屏蔽阻止我的Websocket
EN

Stack Overflow用户
提问于 2022-05-15 05:25:08
回答 1查看 399关注 0票数 0

我遇到了一个恼人的问题,我一直试图在网上寻找一个解决方案,但是没有运气(如果我错过了什么东西,我很高兴能找到一个资源)。

摘要

我的问题具体涉及到勇敢的网页浏览器,它是原生的‘勇敢之盾’阻止我的后端网络套接字,我怀疑这是由于‘指纹’。

在所有其他浏览器上,我的网站将加载,连接到我的后端websocket是没有问题的。但是,在打开了勇敢浏览器和勇敢之盾之后,客户端拒绝连接到我的websocket,并且控制台中没有显示错误以指出问题。

我有其他第三方websocket运行,他们似乎完美地工作,无论勇敢之盾是打开还是关闭-让我相信这可能是与我创建我的websocket服务器的方式有关?

网站: --这与在“rekt”和“chat”选项卡下显示的数据有关。

我的代码(服务器)

代码语言:javascript
复制
const https = require('https');
const {server} = require('ws');
const app = require(./app.js);  // <-- app.js holds my express() server.

//ssl info//
const privateKey  = fs.readFileSync(*omitted for privacy*)
const certificate = fs.readFileSync(*omitted for privacy*)
const credentials = {*omitted for privacy*}

const server = https.createServer(credentials, app).listen(PORT, () => {
  console.log(`listening on port ${PORT}...`);
}

const wss = new Server({server}, {clientTracking: false});

我的代码(客户端)

代码语言:javascript
复制
const serverAddress = '***';
let liqWs = new WebSocket(serverAddress);

...
liqWs.onopen = (e) => console.log('testing for open') //<-- For testing

liqWs.onmessage = (e) => { *do something with the message* }

我试过什么

off.

  • When
    1. 试着测试web-套接字连接并查看“网络”选项卡,在这两种情况下,勇敢的护盾都是开着的,而
    2. 的勇敢盾关闭了,连接出现并返回状态代码101 --一切都很好。

当勇敢的盾牌打开时,连接根本不会出现在网络选项卡中,因此无法查看状态代码.。

“勇敢之盾”的设置让

  1. 四处游玩,看看到底是什么阻挡了我的,发现当我允许指纹的时候,连接就可以建立起来,网站也能以expected.
    1. With的方式检索数据--上面提到的这一点--似乎勇敢的浏览器因为指纹而阻塞了我的websocket。勇敢相信我的websocket可能被用来跟踪用户,因此阻塞了connection.
    • Within我的代码,因此我尝试了如下:const wss = new Server({server}, {clientTracking: false});。由于ws文档指出,clientTracking选项将允许我指定是否希望跟踪用户。这仍然没有你看我的客户端代码片段上面-我添加了一个纯粹的testing.
  • When事件侦听器-勇敢之盾是关闭的,控制台日志‘为开放’将记录为expected.
  • When勇敢盾,没有控制台日志-考虑到这一点,我知道websocket是完全不打开。

我想其他人以前也遇到过这个问题。一个解决办法就是禁用“勇敢之盾”,但是这并不是一个可行的解决方案,因为我的站点的访问者不应该这样做,并且看到在默认情况下启用了“勇敢之盾”,这是一个很大的不便。

如果我遗漏了任何重要的信息,请告诉我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-17 02:36:16

如果任何人在未来遇到这种情况-问题是我打开的WebSockets比允许的更多的勇敢盾打开,特别是指纹封锁。Brave的团队很快就发现了与我的代码无关的问题。

当限制是10的时候,我正在同时打开14个websockets。在即将发布的版本(1.40.x)中,勇敢将这个限制提高到了30个。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72245707

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档