telegram web 端 没有使用 websocket 是如何接收消息呢?

2022-09-02 12:46:22 +08:00
 morri

查看了一下 每次收到消息会主动发送一个 get 请求

blob:https://web.telegram.org/52310f65-5c36-47b3-9f6e-ec91a079d284

header


Request URL: blob:https://web.telegram.org/52310f65-5c36-47b3-9f6e-ec91a079d284
Request Method: GET
Status Code: 200 OK
Referrer Policy: strict-origin-when-cross-origin
Content-Length: 7308
Content-Type: image/jpeg
Provisional headers are shown
Learn more
Referer
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36
3343 次点击
所在节点    程序员
13 条回复
Chaconne
2022-09-02 12:49:50 +08:00
太好用了,tg 牛逼
yuuko
2022-09-02 12:52:08 +08:00
blob:https 请求是前端读取 blob 生成的链接吧,这个请求并非来自服务器,应该是处理 websocket 二进制数据产生的
ncepuzs
2022-09-02 13:32:36 +08:00
@Chaconne 什么自动应答机器人……
SWBMESSI
2022-09-02 14:14:06 +08:00
webk 端 F12 没有看到 ws 但是 webz 端可以看到 ws, 蹲一个大佬解答
SWBMESSI
2022-09-02 14:24:12 +08:00
第一次了解到 Service Worker 应该是跟这个相关....
morri
2022-09-02 14:30:32 +08:00
@SWBMESSI Service Worker 嗯,了解一下
superliy
2022-09-02 14:43:38 +08:00
@SWBMESSI Service Worker 好像只是跟缓存相关的吧,跟实时 ws 没关系?
ljpCN
2022-09-02 14:55:28 +08:00
superchijinpeng
2022-09-02 14:57:45 +08:00
有 Web Socket 的
SWBMESSI
2022-09-02 15:23:09 +08:00
@superliy 看了下 service worker 调试这个是 web.telegram.org/k/端的,F12 里看不到消息发送接收这些请求包括 WS 这个 service worker 的 log 里倒是有这些消息的打印 或许是被代理了?我也不懂 ![image.png]( https://s2.loli.net/2022/09/02/8T92eaMUIrKZEck.png)
SWBMESSI
2022-09-02 15:39:16 +08:00
catinsides
2022-09-02 15:44:40 +08:00
long poll? 微信网页版,钉钉网页版也没用 ws
okakuyang
2022-09-03 09:30:07 +08:00
装了 service worker 之后 所有 fetch 由 service worker 代理。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/877227

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX