准备材料
getToken.js
1 | const players = [ |
CryptoJS.js
1 | !function(t, e) { |
从上面能够看出getToken.js
引用了CryptoJS.js
中的方法进行加密获得最后的token
Python模拟
- 需要对原生的CryptoJS.js进行处理
1 | var CryptoJS; |
1 | import execjs |
nodeJS模拟
1 | // 最原始的cryptojs文件,不需要像python一样经过处理 |
浏览器模拟
- 首先需要找到加密的方法
1 | onFetchData: function() { |
- debug发现
this.$store.state.url.index
固定值为/api/movie
,a为(this.page - 1) * this.limit
即offset,所以比较难处理的就是Object(i["a"])
这个方法 - 该方法的入餐就两个
this.$store.state.url.index
和a
,那么我们可以不管Object(i["a"])
内部的具体实现,定义一个window的全局变量x,将整个Object(i["a"])
挂载给window对象的x属性即可 - 最后取值的时候只需要调用
window.x(this.$store.state.url.index,a)
即可
1 | import requests |