Httpclient4.X 模拟登录腾讯微博成功后会话失效

Ec_boy_HL 2013-09-14 06:01:51
本人用httpclient4.X模拟登录腾讯微博,经分析腾讯微博主要的登录步骤见下图,

执行完 1.http://check.ptlogin2.qq.com/check...和2.http://ptlogin2.qq.com/login...,(密码及其它参数构造均正确)
腾讯微博服务器返回登录成功的信息,然而问题来了,在以前,返回登录成功后即可用该httpclient对象访问腾讯微博所有需要登录后才能访问的页面。而现在显示登录成功后的会话却失败了,求解?

其次,观察浏览器登录,在以上两步执行完后,有一个http://ptlogin4.t.qq.com/check_sig...的请求,研究了半天没看懂,其中有一个参数ptsig没法构造, 望各位兄台赐教,难道是腾讯微博故意加了这个请求限制模拟登录?


...全文
596 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
eunisa 2014-12-11
  • 打赏
  • 举报
回复
client 参数是怎么准备的 密码是怎样加密的啊 老报用户名,密码错误 密码用的是MD5 加密的
程序员向西 2014-04-10
  • 打赏
  • 举报
回复
解决了,是client参数的问题!
gtb1216 2014-01-03
  • 打赏
  • 举报
回复
求高手指点啊
gtb1216 2014-01-03
  • 打赏
  • 举报
回复
这个问题解决了吗,如何解决的啊
clbxp 2013-12-17
  • 打赏
  • 举报
回复
我也需要做这类系统,有兴趣一起来做么??集结大家的力量,QQ群:271230038
meidaizissn 2013-12-02
  • 打赏
  • 举报
回复
引用 4 楼 jishipu 的回复:
在http://ptlogin2.qq.com/login...的返回结果中有链接http://check.ptlogin2.qq.com/check...。用浏览器的调试工具看不到,用fiddler抓一下就看到了。不用单独构造,相当于二次登录。
您好 可以加下QQ交流下模拟登录的问题吗 289601537谢谢。
meidaizissn 2013-11-30
  • 打赏
  • 举报
回复
引用 8 楼 bulls33 的回复:
我找到方法了,httpClient对get()方法的重定向会自动处理,所以会得不到cookie,可以将自动重定向禁掉。httpclient.getParams().setParameter(ClientPNames.HANDLE_REDIRECTS, false);这是httpClient4.x以后的做法。自问自答了。。。
引用 7 楼 bulls33 的回复:
[quote=引用 6 楼 butchild 的回复:] [quote=引用 5 楼 piaoniu_1985 的回复:] [quote=引用 3 楼 piaoniu_1985 的回复:] 楼主的解决方案,等待中
问题解决了,在腾讯改版中,发送的参数多了几个,只要把多的参数都传过去,得到的返回链接中就有了第二步需要的302链接。如下楼的界面[/quote] 这个地址放到浏览器是状态302,而且能够获得cookie,但是放到java里请求,状态是200,并且获取不到cookie。很诡异的状况,不知道楼上是如何实现的呢?[/quote] 请问你实现了保存cookie的功能了吗?[/quote]可以加下QQ交流下吗 289601537
meidaizissn 2013-11-22
  • 打赏
  • 举报
回复
楼主问题解决了吗 我也遇到了类似苦难 方便加下QQ:289601537 我请教几个问题 方便吗
csmijo 2013-11-10
  • 打赏
  • 举报
回复
我找到方法了,httpClient对get()方法的重定向会自动处理,所以会得不到cookie,可以将自动重定向禁掉。httpclient.getParams().setParameter(ClientPNames.HANDLE_REDIRECTS, false);这是httpClient4.x以后的做法。自问自答了。。。
csmijo 2013-11-10
  • 打赏
  • 举报
回复
引用 6 楼 butchild 的回复:
[quote=引用 5 楼 piaoniu_1985 的回复:] [quote=引用 3 楼 piaoniu_1985 的回复:] 楼主的解决方案,等待中
问题解决了,在腾讯改版中,发送的参数多了几个,只要把多的参数都传过去,得到的返回链接中就有了第二步需要的302链接。如下楼的界面[/quote] 这个地址放到浏览器是状态302,而且能够获得cookie,但是放到java里请求,状态是200,并且获取不到cookie。很诡异的状况,不知道楼上是如何实现的呢?[/quote] 请问你实现了保存cookie的功能了吗?
butchild 2013-09-24
  • 打赏
  • 举报
回复
引用 5 楼 piaoniu_1985 的回复:
[quote=引用 3 楼 piaoniu_1985 的回复:] 楼主的解决方案,等待中
问题解决了,在腾讯改版中,发送的参数多了几个,只要把多的参数都传过去,得到的返回链接中就有了第二步需要的302链接。如下楼的界面[/quote] 这个地址放到浏览器是状态302,而且能够获得cookie,但是放到java里请求,状态是200,并且获取不到cookie。很诡异的状况,不知道楼上是如何实现的呢?
效林少爷 2013-09-16
  • 打赏
  • 举报
回复
有没有什么大侠来分析分析 学习下啊
yes136330103 2013-09-16
  • 打赏
  • 举报
回复
我知道原因,是cookie的问题 三个月前我还做腾讯微博的程序,这两天整理老程序时出现了你说的这个问题 琢磨好一段时间才弄明白 登陆之后的Cookie可以发表微博,但其它的个别功能就不行了 有个COOKIE的值需要获取到 至于你说的问题,我是知道原因的 加下我QQ,我也有小地方想跟你一起研究研究 635642423
向上低调的飞 2013-09-16
  • 打赏
  • 举报
回复
引用 3 楼 piaoniu_1985 的回复:
楼主的解决方案,等待中
问题解决了,在腾讯改版中,发送的参数多了几个,只要把多的参数都传过去,得到的返回链接中就有了第二步需要的302链接。如下楼的界面
jishipu 2013-09-16
  • 打赏
  • 举报
回复
在http://ptlogin2.qq.com/login...的返回结果中有链接http://check.ptlogin2.qq.com/check...。用浏览器的调试工具看不到,用fiddler抓一下就看到了。不用单独构造,相当于二次登录。

向上低调的飞 2013-09-16
  • 打赏
  • 举报
回复
楼主的解决方案,等待中

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧