本文仅供个人研究学习,请勿用于任何非法及商业用途,否则后果自负。转载前请联系本人。
目前有不少工具在做抖音截流获客,最近碰到个类似需求,于是花了些时间分析了抖音直播web端的相关技术,借助chrome强大的调试功能,web端的胴体就慢慢呈现出来了。
一、结构分析
先简单介绍下抖音web端数据收发的流程
抖音直播web端目前数据传输使用的google的brotli压缩算法,类似传统gzip,但是压缩比更高。
在数据发送和解析时加了一层protobuf,目的也是压缩传输内容节省带宽,这个东西也是出自google。它的定义文件在代码中也不难找到,你所要做的就是把相关定义抠出来。
function decode(e:Buffer){
e instanceof a || (e = new a(e));
for (var n = t === undefined ? e.len : e.pos + t, r = {}; e.pos < n;) {
var o = e.uint32();
switch (o >>> 3) {
case 1:
r.common = c.webcast.im.Common.d