热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

请问各位大虾,HttpClient要如何才能达到一直保持已登录状态的效果?

如题,请问怎样才能让程序一直保持已登录状态?可能这样问比较抽象了一点,我来举个例子吧,例如:当我把“登陆操作”和“其他功能操作”放在一起作为一个小程序时,

    如题,请问怎样才能让程序一直保持已登录状态?
    可能这样问比较抽象了一点,我来举个例子吧,
    例如:
    当我把“登陆操作”和“其他功能操作”放在一起作为一个小程序时,“其他功能操作”能够正常进行。
    而当我把“登陆操作”单独作为一个小程序a,“其他功能操作”单独作为一个小程序b。当我执行完程序a再执行程序b时,“其他功能操作”不能够成功进行。
    请问,在执行完程序a后再去执行程序b的这种情况下,怎样才能让程序b执行时还能让HttpClient保持已登录状态呢?


 请各位大虾不吝指教~!感谢感谢~!!

3 个解决方案

#1


执行程序a后不能再执行b,是不是a程序的IO流没有正常关闭呀,请仔细查查,
有些时候就是这原因倒置的。

#2


这里说的后面:你的httpClient是创建新的对象了吧,原来的COOKIE信息就是没有了.

如果你是在同一代码中(就是一次执行过程中,使用同一个HttpClient)使用,那是可以的.

HttpClient client = new HttpClient();
PostMethod post = new PostMethod();
GetMethod get = new GetMethod();
PostMethod post = new PostMethod();

这样的多次访问是可以的,但如果你使用完之后,再创建新的HttpClient,那么原来的COOKIE就不存在了

#3


引用 2 楼 awusoft 的回复:
这里说的后面:你的httpClient是创建新的对象了吧,原来的COOKIE信息就是没有了.

如果你是在同一代码中(就是一次执行过程中,使用同一个HttpClient)使用,那是可以的.

HttpClient client = new HttpClient();
PostMethod post = new PostMethod();
GetMethod get = new Get……


    感谢~!!
    似乎就是这个原因了,之前一直傻傻地在想其他原因,呵呵,感谢AWUSOFT~~~!!

推荐阅读
author-avatar
小老特
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有