Server redirected too many times

 

我之前遇到过这种问题,有些网站是这样的,他判断cookie里面是否有某个值,如果没有就定向到另外一个页面去把COOKIE的值设置了,然后再跳转回来,但是如果我们通过HttpURLConnection去的话,cookie里面一直都没有那个值,所以他就一直在那里跳来跳去,所以我们就需要一个CookieManager,在使用URLConnection之前设置它,只需要设置一次。

目前还不清楚这样的设置是否会带来更多的内存开销。

如果有人愿意研究,请告知。

 

System.setProperty("http.maxRedirects", "100");

It's apparently redirecting in an infinite loop because you don't maintain the user session. The session is usually backed by a cookie. You need to create a CookieManager before you use URLConnection.

// First set the default cookie manager.
CookieHandler.setDefault(new CookieManager(null, CookiePolicy.ACCEPT_ALL));

// All the following subsequent URLConnections will use the same cookie manager.
URLConnection connection = new URL(url).openConnection();
// ...

connection = new URL(url).openConnection();
// ...

connection = new URL(url).openConnection();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章