-1
我无法成功完成HTTPS POST请求。请求过得很好,但我得到的回应与我在浏览器中收到的回复不同。我在浏览器中使用拦截代理来查看请求/响应,我相信我在下面的代码中提出了完全相同的请求。问题是响应代码是200(OK),而不是响应代码301(重定向)。重定向到我想要的页面,但我似乎无法使用下面的代码。我试过使用'HttpsURLConnection',但它没有什么区别。Java HTTPS POST请求正在返回响应代码200当我知道它应该返回302响应代码
我确定请求是一样的,但它没有被一视同仁。难道在我的浏览器中,SSL证书与我的cookie一起使用,从而使请求不同?
我怎样才能到达所需的重定向页面?
private static void post(){
try {
URL obj = new URL("https://www.mywebsiteoffun4321.com/add");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
con.setRequestProperty("Host", "www.mywebsiteoffun4321.com");
con.setRequestProperty("Cookie", cookie);
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
String urlParameters = "var=true";
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
System.out.println(con.getResponseCode());
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
} catch (Exception e) {System.out.println(e);}
}
'HttpURLConnection'默认遵循重定向。 – EJP