【问题标题】:how to maintain session in android如何在android中维护会话
【发布时间】:2012-11-30 05:08:07
【问题描述】:

我是 android 新手。在我的应用程序中,我需要在第一次连接 Web 服务时保持会话(当我调用第一个 url 时我需要实现 java 服务器 Web 服务 url,我得到响应。在第二个 url 调用它之后给出了错误的响应。事情是我需要在同一个会话中调用 url,因为我调用了我的第一个 url当我第一次打电话时,我怎样才能让他们继续参加进一步的活动。请分享示例代码或相关文档或相关答案。希望您理解我的意图。

【问题讨论】:

  • 不太确定我完全理解您的问题,您想在整个应用程序中保留用户会话 ID?
  • 感谢您的回复。您明白我的意思。我需要一些示例 sn-ps 代码,请帮助我。

标签: android android-webview android-networking android-websettings


【解决方案1】:

如果使用 http 客户端,则从服务器获取 cookie 或会话:

     List<Cookie> cookies = ((AbstractHttpClient) httpclient).getCookieStore().getCookies();

             if (cookies.isEmpty()) {
                Log.d("TAG","no cookies received");
             } else {
                for (int i = 0; i < cookies.size(); i++) {

                    if(cookies.get(i).getName().contentEquals("ASP.NET_SessionId")) {
                     asp = cookies.get(i).getValue();
                   }
                }
                Log.e("this is the cookiee", asp);
                }  

【讨论】:

  • 虽然一般来说这个答案是正确的,但它确实假设您在服务器端使用 ASP.NET。如果您的服务器使用另一个框架(或者您维护自己的会话),您应该找出存储会话的确切 cookie。
  • 是的,它将取决于会话名称,如 PHPSESSID 或服务器为会话名称设置的任何内容
猜你喜欢
  • 1970-01-01
  • 2015-03-28
  • 2014-10-27
  • 2011-03-03
  • 2013-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多