天天看點

get請求走wap的多次302原因和cookie有關

通過抓包發現通路成功的時候請求頭的cookie值有兩個,就是第一次請求時傳回頭裡面的兩個Set-Cookie, 以前代碼是httpURLConnection.getHeaderField("Set-Cookie"),隻能擷取到最後一個Set-Cookie的值,現在改成

    String cookieVal = null;

    String key = null;

    for (int i = 1; (key = httpURLConnection.getHeaderFieldKey(i)) != null; i++) {

     if (key.equalsIgnoreCase("set-cookie")) {

      cookieVal = httpURLConnection.getHeaderField(i);

      cookieVal = cookieVal.substring(0,

        cookieVal.indexOf(";"));

      cookies = cookies + cookieVal + ";";

     }

    }

    cookie = cookies;

每次通路都加cookie,就成功通路了,并且得到頁面的内容;隻不過,抓包資訊裡面是第四次才在請求頭加上cookie,現在也不管那麼多原因了,望知情的同學不吝告知。

還有一種沒有cookie,程式處理就是無限多次302,現在還沒解決,郁悶ing……這種連接配接還時好時壞,uc能正常通路,每次我都沒跟完,就好了,現在隻好預先處理多次302就continue了,同時把該連接配接寫檔案。