我试图在 Http 请求中设置一个 cookie,但我不知道如何实现它:
HttpGet getReq = new HttpGet("https://www.myexample.com");
getReq.setHeader("mycookie", "customvalue123");
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(getReq);
result = EntityUtils.toString(response.getEntity());
Log.e("RESPONSE", "GET RESPONSE: " + result);
我的图书馆具体是这样的:
android {
useLibrary 'org.apache.http.legacy'
}
当涉及到发出 get 或 post 请求、获得响应时,对我来说没问题,但发送一个简单的 cookie 似乎是一件非常奇怪的事情(考虑到 org.apache.http.legacy 是关于 cookie 的互联网)。谢谢!
最佳答案
好的,我发现了问题。
我把它贴在这里,希望对遇到相同主题的人有用。 使用 org.apache.http.legacy 库设置 cookie 的正确方法是这样的:
HttpGet getReq = new HttpGet("https://www.myexample.com");
getReq.setHeader("Cookie", "mycookie = customvalue123; mycookie2 = custom2");
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(getReq);
result = EntityUtils.toString(response.getEntity());
Log.e("RESPONSE", "GET RESPONSE: " + result);
关于Android 使用 org.apache.http.legacy 设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45020036/