相关疑难解决方法(0)

Android会话管理

是否有特定的Android会话管理库?我需要在普通的Android应用中管理我的会话.不在WebView.我可以从post方法设置会话.但是当我发送另一个会话失败的请求时.有人可以帮我解决这个问题吗?

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("My url");

HttpResponse response = httpClient.execute(httppost);
List<Cookie> cookies = httpClient.getCookieStore().getCookies();

if (cookies.isEmpty()) {
    System.out.println("None");
} else {
    for (int i = 0; i < cookies.size(); i++) {
        System.out.println("- " + cookies.get(i).toString());
    }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试访问会话丢失的同一主机时:

HttpGet httpGet = new HttpGet("my url 2");
HttpResponse response = httpClient.execute(httpGet);
Run Code Online (Sandbox Code Playgroud)

我得到了登录页面响应正文.

java session android session-cookies apache-commons-httpclient

24
推荐指数
1
解决办法
3万
查看次数

Android中的Http cookie商店

我正在为该网站开发一个授权的Android客户端.我有一个帖子方法.我的代码示例:

public void run() {
    handler.sendMessage(Message.obtain(handler, HttpConnection.DID_START));
    httpClient = new DefaultHttpClient();
    HttpConnectionParams.setSoTimeout(httpClient.getParams(), 25000);
    HttpResponse response = null;
    try{            
        switch (method){
        case POST:
            HttpPost httpPost = new HttpPost(url);
            httpPost.setHeaders(headers);
            if (data != null) httpPost.setEntity(new StringEntity(data));
            response = httpClient.execute(httpPost);
            break;
        }
        processEntity(response);

    }catch(Exception e){
        handler.sendMessage(Message.obtain(handler, HttpConnection.DID_ERROR, e));

    }
    ConnectionManager.getInstanse().didComplete(this);      
}
Run Code Online (Sandbox Code Playgroud)

如何保持饼干?

java cookies android httpclient

2
推荐指数
1
解决办法
2万
查看次数