POST一样的数据却登录失败

2012-06-11 16:15:13 +08:00
 wokao
登录过程如下:客户端先POST一条空数据到服务器, 得到set-cookie.
然后将加密后的用户名&密码, POST到服务器, 返回登录成功.
PS.抓包数次, 客户端每次POST加密后的用户名&密码是一样的.

自己用python写了个脚本来模拟这一过程.用requests建立一个session来保持Cookie.
先POST一条空数据, 取得Cookie, 将其加入header, 然后将加密的用户名&密码作为参数POST.
Wireshark分析和客户端POST的数据一样, 但是返回登录失败. 大概会是哪里出问题了呢?
2978 次点击
所在节点    问与答
7 条回复
cute
2012-06-11 16:41:58 +08:00
其他header头部是一样的吗?比如user-agent。最好和客户端发送的一样。
wokao
2012-06-11 16:50:12 +08:00
@cute header一样.将客户端和自己POST的raw数据对比过没差异.
lisztli
2012-06-11 16:51:37 +08:00
看看有没有token啥的
yujnln
2012-06-11 16:53:04 +08:00
伪装成浏览器了吗?
POST的数据是否进行了压缩?长度是否动态控制好了?
session是否记录正确?
postdata的编码格式?
对方服务器是否防止盗链,你加了Referer了么?

话说为什么要先POST一次呢,直接登录不行么...
yangruixuan
2012-06-11 17:04:55 +08:00
Referer +1
wokao
2012-06-11 17:29:15 +08:00
@yujnln 某游戏客户端= =!
第一次POST获取cookie, 登录后激活此cookie.之后的操作全靠header里的cookie来验证.
伪装应该是成功的, 用激活后的cookie进行操作没问题.
wokao
2012-06-11 17:30:49 +08:00
@lisztli 这个真没有.Wireshark抓包, 过滤http.connection. 只看到2个POST.

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

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

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

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

© 2021 V2EX