微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从Android访问servlet时维护HTTP会话

如何解决从Android访问servlet时维护HTTP会话

| 从Android访问servlet时,我无法维护会话。我只是将参数以及URL传递给servlet,该servlet从数据库收集数据并将其存储在会话中,但是我无法在后续请求中检索到它。 当我在servlet中关闭ѭ0时,会话是否过期?     

解决方法

        这是客户端的问题。 HTTP会话由cookie维护。客户端需要确保按照HTTP规范在后续请求中正确发送回cookie。 HttpClient API为此提供了
CookieStore
类,您需要在
HttpContext
中设置该类,而您又需要在每个
HttpClient#execute()
调用中传递该类。
HttpClient httpClient = new DefaultHttpClient();
CookieStore cookieStore = new BasicCookieStore();
HttpContext httpContext = new BasicHttpContext();
httpContext.setAttribute(ClientContext.COOKIE_STORE,cookieStore);
// ...

HttpResponse response1 = httpClient.execute(yourMethod1,httpContext);
// ...

HttpResponse response2 = httpClient.execute(yourMethod2,httpContext);
// ...
要了解有关会话如何工作的更多信息,请阅读以下答案:servlet如何工作?实例化,会话,共享变量和多线程     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。