#java #httprequest #java-15
#java #httprequest #java-15
Вопрос:
Два способа http-запроса дают другие результаты, один с помощью JAVA-кода, а второй с помощью копирования элемента с веб-сайта.
Я пытаюсь сопоставить их с тем же результатом! Когда я использую Java-код
private static boolean isValid(URL url, HttpURLConnection connection) {
BufferedReader reader;
String line;
StringBuffer responseContant = new StringBuffer();
try {
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(4000);
connection.setReadTimeout(4000);
int status = connection.getResponseCode();
if (status > 299) {
reader = new BufferedReader(new InputStreamReader(connection.getErrorStream()));
while ((line = reader.readLine()) != null)
responseContant.append(line);
reader.close();
} else {
reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
while ((line = reader.readLine()) != null)
responseContant.append(line);
reader.close();
return true;
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
Вместо этого он дает мне другое значение, используя inspect> copy> copy element
Как это возможно? и как исправить эту проблему?
Спасибо, ребята!!
Комментарии:
1. Что вы имеете в виду, говоря: «Два способа HTTP-запроса»? Если код состояния больше 299, вы считываете из потока ошибок, в противном случае вы считываете из выходного потока.
2. нет, мой статус 200, но я получаю другие значения, если использую «инспектировать> копировать> копировать элемент» или java-запрос
3. Я еще не понял ваш вопрос. И, если ответа пока нет, и этот вопрос не близок, может быть, другие тоже не поняли. Попытайтесь прояснить это и предоставить некоторые выводы.
4. вывод очень длинный, более 4000 строк, просто попробуйте сами. вы должны идти google.co.il а затем щелкните правой кнопкой мыши> проверить> скопировать весь html — код . после сравните его со значением http-запроса java и увидите, что они не совпадают