请教大家一个关于 api 请求过期的问题。

2016-12-05 23:39:23 +08:00
 checgg

最近在通过抓优酷的 API 去收集一些信息的时候,发现这个 API 有一个过期时间的限制: API 地址: http://detail.api.mobile.youku.com/layout/ios5_0/play/detail?area_code=0&brand=apple&btype=iPhone8%2C1&deviceid=111&external=0&guid=11&id=1df0e20e824e11e3b8b7&idfa=11&network=WIFI&operator=%E4%B8%AD%E5%9B%BD%E7%A7%BB%E5%8A%A8_46000&os=ios&os_ver=10.0.2&ouid=11&pid=69b81504767483cf&scale=2&vdid=F11&ver=5.10.3&s=9cb6e95b8f1d326f6c2231994fab6f39&t=1480826251

我现在得出的结论是,它是通过_s_和_t_来验证请求是否过期的, t 是当前时间戳, s 我估计是时间戳 加盐再加密之后的参数。 s 应该是在客户端生成的,每次请求都不一样。 我能想到的一个办法就是把优酷的 APP 反编译之后通过源码查看 S 参数生成规则,但是 YK APP 应该是做了一些反编译的防护的,我失败了。 想请教下大家有什么好办法吗? 或者我的理解不对,其实这个 API 不是通过 S 去验证的?

2381 次点击
所在节点    问与答
2 条回复
checgg
2016-12-06 09:59:39 +08:00
源码已经反编译出来了。谢谢大家。
cokky
2017-10-30 14:19:52 +08:00
@checgg 能分享下是怎么来做反编译么,多谢!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/325513

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX