У меня возникли проблемы с успешной отправкой запроса 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