У меня есть следующий код, но при его запуске я получаю исключение
«SocketTimeoutException» в openStream.
Код:
String urlStr = "https://www.nse-india.com/live_market/dynaContent/live_watch/get_quote/getHistoricalData.jsp?symbol=SCHNEIDER&series=EQ&fromDate=01-01-2020&toDate=29-02-2020&datePeriod=&hiddDwnld=true"; URL urlConn = new URL(urlStr); InputStream in = urlConn.openStream();
Когда я запускаю тот же URL из браузера, он работает нормально.
Сервер ищет два заголовка запроса, работает приведенный ниже код
String urlStr = "https://www.nse-india.com/live_market/dynaContent/live_watch/get_quote/getHistoricalData.jsp?symbol=SCHNEIDER&series=EQ&fromDate=01-01-2020&toDate=29-02-2020&datePeriod=&hiddDwnld=true"; URL url = new URL(urlStr); URLConnection conn = url.openConnection(); conn.setRequestProperty("accept-language", "en-US,en;q=0.9"); conn.setRequestProperty("user-agent", "MyJavaApp"); InputStream in = conn.getInputStream();
Когда я выполняю тот же URL из браузера, он работает нормально.
Очевидно, что ваш браузер и JVM делают различие. Я полагаю, в вашем браузере настроен прокси-сервер HTTP, а в вашем приложении нет?