当前位置: 首页 > 面试题库 >

Android中的HTTP cookie存储

汪皓
2023-03-14
问题内容

我正在为具有授权的网站开发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);      
}

如何保存饼干?


问题答案:

您从HttpResponse response以下位置获取Cookie :

Header[] mCookies = response.getHeaders("cookie");

并将它们添加到您的下一个请求中:

HttpClient httpClient = new DefaultHttpClient();

//parse name/value from mCookies[0]. If you have more than one cookie, a for cycle is needed.
CookieStore cookieStore = new BasicCookieStore();
Cookie cookie = new BasicClientCookie("name", "value");
cookieStore.addCookie(cookie);

HttpContext localContext = new BasicHttpContext();
localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore);

HttpGet httpGet = new HttpGet("http://www.domain.com/");

HttpResponse response = httpClient.execute(httpGet, localContext);


 类似资料:
  • 我已经把我所有的图片从文件夹mipmap移到drawable,因为这里有人说mipmap文件夹只供app图标使用,以便在app mipmap vs.drawable文件夹中使用(答案得到了841个赞)。然而,当我现在想启动我的应用程序时,我得到一个错误消息 在一些实际问题中,人们告诉将图片存储在不同的可绘制文件夹中(参见Android:理解可绘制文件夹),如drawable-xxhdpi或draw

  • 我想在Android系统中将大数据从一个进程/应用程序传输到另一个进程/应用程序,但在Java层使用内存文件创建共享内存的方法并不奏效。 然后尝试在android原生中创建共享内存,我在某处阅读了 ashmem_create_regionAPI可以使用。但看起来这个API无法访问或打开。它在libcutils.so. 这是在 Q1.如何在android本机代码中访问此库。 如果无法访问,那么在nd

  • 问题内容: 我是Java和Android开发的新手,我想问一下将数据存储到持久性存储的可用方法是什么?例如,我想在数据库或文件中存储字符串的集合。 请指教。谢谢。 问题答案: 正如您在问题本身中所说的那样,您可以使用文件或数据库。如果有更多数据,则可以使用文件和数据库(SQLITE);如果数据量较小,则也可以使用SharedPreferences。以下是其中所有链接的一个链接关于Android中的

  • 第二:/storage/sdcard0-是内部内存,/storage/extsdcard实际上是插入的内存卡。 我的应用程序需要数据存储在sd卡,所以我面临的问题,如何确定,哪个文件夹可能是sd卡链接或不是。你知道其他Android制造商(LG,HTC,索尼)的情况吗?如何处理外部SD卡,以及它们在Android系统中是如何可见的?

  • 我正在尝试使用下面的代码从Android系统存储中导入私钥: 其中是使用方法检索的。不返回,但PrivateKey对象包含错误的键(其所有重要字段都为)。我认为密钥是不可导出的,并试图在下一段代码中使用它: UPD:我试着用不同的RSA证书做同样的事情,结果是一样的:(