java - HttpsUrlConnection. setInstanceFollowRedirects(false) seems not effective -
everybody.i'm using web crawler query user's integral in web sites.but trouble.first of ,let's focus on picture: enter image description here
as can see,the first request ,it's response code 302,that page redirected page.now ,look @ code,the login method:
private juneyresults login(string url, string param) { juneyresults results = new juneyresults(); httpsurlconnection connection = null; int contentlength = param.getbytes().length; try { url requested = new url(url); connection = (httpsurlconnection) requested.openconnection(); connection.setinstancefollowredirects(false); connection.setdooutput(true); connection.setrequestmethod("post"); connection.setrequestproperty("user-agent", ua); connection.setrequestproperty("content-type", "application/x-www-form-urlencoded"); connection.setrequestproperty("cookie", map2string(mcookies)); connection.setrequestproperty("content-length",string.valueof(contentlength)); dataoutputstream os = new dataoutputstream(connection.getoutputstream()); os.write(param.getbytes()); os.flush(); os.close(); switch (connection.getresponsecode()) { case httpurlconnection.http_moved_perm: case httpurlconnection.http_moved_temp: updatejuneyaircookie(connection); break; default: break; } } catch (exception e) { results.setexception(e.getmessage()); } { if (connection != null) connection.disconnect(); } return results; }
ok,i have set request header properties need.and passed false setinstancefollowredirects method.the expected response code 302,the same see in picture,but,it's still returns 200.i don't think there logic error in code,however,facts facts,it returns 200,in picture,the page has been redirected third page!!so,i hope of can me find out what's reasons are.
Comments
Post a Comment