image-20210923150835784
某查 api 接口请求的请求头都会增加这么一个头,每次请求都会刷新,如果不携带就会返回状态码 405
image-20210923152102481
https://www.***.com/api/company/getDynamic?keyNo=3b0d862f931ada85bbe3c5e429603122
image-20210923152352927
点击进入,打断点,调试。
找到生成 headers
的地方。headers 应该是在请求之前就设置进去了,所以就可以进去 main.js 搜索一下关键词
image-20210923153302770
•XHR.setRequestHeader
•ajax请求中直接设置 headers: {}
就找到这两个,所以就直接在 js
中
搜 setRequestHeader
和 headers
, 有这两个关键词的地方都不是很多,并且设置请求头的地方就更少了
堆栈信息里就两个 js
, 都找一下,打断点,各种试。main.js
30万行,调试起来有点难受,不知道有啥好办法
image-20210923172346351
image-20210923172958827
ok 了
image-20210923191714960
打断点调试,最后发现是 hmac 加密,同一个请求加密的结果是一样。后端会校验。
image-20210924140804205
本文仅做研究学习使用
本文分享自 Python爬虫scrapy 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!