首先打开有道翻译随便输入一个单词,打开f12,查看请求方式以及需要提交的参数

其中重要的参数就是这几个,别问为什么.直觉=-=;
看起来salt,和ts像时间戳,暂时不管[不可能一次提交两个时间戳=-=],bv也不管(先看自己眼熟的--->sign)
然后,全文搜索找到js文件定位sign
_20190523230623.png
幸好只有一个js文件,然后定位sign,搜索到有7个匹配的,之后先整体过一遍.
惊喜出现

sign是通过一个字符串拼接然后md5加密之后实现的,但是其中有e 和 i 不知道是啥;
此时打断点开始调试,输入相同的单词再来一遍,鼠标停在断点处时,可以看到
e 就是输入的单词
i 就是 r + parseInt(10 * Math.random(), 10); 生成的
r 就是 "" + (new Date).getTime() 的结果
t 就是 md5(navigator.appVersion) 的结果

]
剩下的参数就可以顺利解决了,
代码有空再写[-=-=-]
网友评论