是不是 有些网站 防止重复提交,还会对参数 之间 进行校验?
比如这里 我找的 后台请求的json的链接:
第一页:
第二页:
对URL 进行了 ENCode, 通过 Decode 发现 后面的参数 实际是:
第一页:
http://www.igoldenbeta.com:8080/cn-jsfund-server-mobile/bkt/api
?appkey=1.0&ttid=Android_unknown_unknown_unknown_xxxx_1.4.0.0003_v10&t=2015-07-10 13:30:23&sid=&imei=1.0&v=2.0&sign=64c5ec32720f97401aa502a74f41500b&data={"limit":"20","start":"0"}&api=api.system.basket.adjustlist&imsi=1.0
第二页:
http://www.igoldenbeta.com:8080/cn-jsfund-server-mobile/bkt/api
?appkey=1.0&ttid=Android_unknown_unknown_unknown_xxxx_1.4.0.0003_v10&t=2015-07-10 13:31:19&sid=&imei=1.0&v=2.0&sign=203b7bf0fbc687c7d06d1d485b1a01da&data={"limit":"20","start":"20"}&api=api.system.basket.adjustlist&imsi=1.0
(如果不进行encode 把这个 链接 放在火狐 里, 火狐 会自动encode的)
可以很明显 看到 分页的参数 在 连接中,那就 访问第三页 吧 ,后面的参数 改成:
http://www.igoldenbeta.com:8080/cn-jsfund-server-mobile/bkt/api?appkey=1.0&ttid=Android_unknown_unknown_unknown_xxxx_1.4.0.0003_v10&t=2015-07-10 13:31:19&sid=&imei=1.0&v=2.0&sign=203b7bf0fbc687c7d06d1d485b1a01da&data={"limit":"20","start":"40"}&api=api.system.basket.adjustlist&imsi=1.0
40开始,取20条 ,就是 第三页吧,哎,不行。。。
经过比对 发现 其他的参数 都是一样的,只有sign=203b7bf0fbc687c7d06d1d485b1a01da 不同,
好像 如果是同一sign 的时候,分页参数 是不允许 修改的;可是 往后面的 分页 的 这个参数值 我也不知道啊
这个是怎么回事啊?
sign 是签名 用md5加密校验 保证请求不被篡改。
哦,原来如此,可以 如果我想 模拟 浏览器 访问,拼接后面分页的url 应该怎么做
自己能 给 那边的 服务器 生成一个 sign 吗?
还是说 没有办法了?
@assasszt: 基本没办法了。你不知道他是按什么规则生成md5。
@长蘑菇星人: 谢谢