不要在Marshmallow下面设置cookie

时间:2018-01-30 09:49:37

标签: android http cookies get

我喜欢在Android设置自定义cookie中制作原始HTTP GET请求,但下面的代码仅适用于版本23及更高版本的android。对于版本低于23的设备和模拟器,代码不会引发任何异常,但在HTTP请求中添加了任何cookie(已检查的服务器端)。

CookieManager cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
CookieHandler test =CookieHandler.getDefault();
HttpCookie lsd=null;

mycoockie= new HttpCookie("myc", coockie);

mycoockie.setDomain(domain);
mycoockie.setPath(path);
mycoockie.setVersion(0);
mycoockie.setMaxAge(-1);

try {
    cookieManager.getCookieStore().add(new URI(basicuri), mycoockie);
} catch (URISyntaxException e) {
    e.printStackTrace();
}

URL url;
String response = "";
try {
    url = new URL(requestURL);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setReadTimeout(15000);
    conn.setConnectTimeout(15000);
    conn.setRequestMethod("POST");
    conn.setDoInput(true);
    conn.setDoOutput(true);
    OutputStream os = conn.getOutputStream();
    BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8"));
    writer.write(getPostDataString(postDataParams));
    writer.flush();
    writer.close();
    os.close();
    int responseCode=conn.getResponseCode();
[...]

感谢您的任何建议。

0 个答案:

没有答案