某red书最新版x-s、x-s-common(上)

目标:达人主页笔记翻页接口

打上xhr断点
在这里插入图片描述
断住后回溯堆栈,会发现直到异步堆栈为止参数都是已经生成的,那么进入异步堆栈打上断点
在这里插入图片描述
刷新页面发现参数已经生成,那么继续往下找堆栈

进入第二个异步。发现此时参数并未生成在这里插入图片描述
异步调试技巧:看到.then,并且此时加密参数还未生成,可以点进.then第一个参数(函数),打上断点看运行情况。

进入p(d.fulfilled),在return处打上断点,跳过来,然后就一直按F8去跳,跳个几次吧(没数),会发现参数竟然加上了
在这里插入图片描述
那就在这个位置开始单步调试看看

方法:先F8,每次断在return位置的时候单步(F11)进去,进去后逐行执行(F10),看是否有可疑地方。这个过程中要注意堆栈参数e.headers是否有所需加密参数出现。重复几次操作你会发现,在进入下面这个代码之后参数就生成了
在这里插入图片描述
名字也很可疑,打上断点跳过来看看
在这里插入图片描述
仿佛勒住了命运的咽喉~

进入xsXt函数,单步执行
在这里插入图片描述
这不就来了吗家人们

l = (a && void 0 !== window._webmsxyw ? window._webmsxyw : encrypt_sign)(c, i) || {
   
   }

l就是我们所需要的x-s所在的对象

参数c:
在这里插入图片描述
参数i是undefined(post请求才有)

控制台跑一下看看
在这里插入图片描述
两个函数都可以生成xs,但是看长度明显window._webmsxyw才是我们需要的,点进去就是加密主要文件

看不懂?没关系,既然可以通过window调用,说明加密函数最终赋值给了全局window,那么我们只需要依葫芦画瓢,把整个js文件代码拷出,补上所需环境,再试着执行window._webmsxyw看是否有被赋值即可。

补环境过程不是本文重点就不阐述了,不然太长了文章,直接提供我补好的环境,脱敏部分自行去完善

window = globalThis
​
​
window.screen = {
   
   
    "availHeight": 1040,
    "availLeft": -1920,
    "availTop": -216,
    "availWidth": 1920,
    "colorDepth": 24,
    "height": 1080,
    "isExtended": true,
    "onchange": null,
    "pixelDepth": 24,
    "width": 1920,
    "orientation": {
   
   angle: 0, type: 'landscape-primary', onchange: null,}
}
window.indexedDB = {
   
   }
window.sdt_source_init = true
window.localStorage = {
   
   
    "b1b1": "1",
    "XHS_STRATEGY_BOX"
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值