В моем Java (приложении Spring Boot) есть следующий код для загрузки и анализа XML документа:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document subwayStatusDoc = builder.parse(new URL("http://web.mta.info/status/ServiceStatusSubway.xml").openStream());
//do parsing work
Этот код прекрасно работает локально, но при запуске в развертывании Heroku, Я вижу следующую ошибку:
java.io.IOException: Server returned HTTP response code: 403 for URL: http://web.mta.info/status/ServiceStatusSubway.xml
Я также вижу ту же ошибку в другом месте при попытке загрузить другой файл:
http://web.mta.info/developers/data/nyct/subway/Stations.csv
Оба эти файла находятся в свободном доступе на inte rnet без каких-либо учетных данных, поэтому я не понимаю, что здесь происходит. Код работает хорошо локально без проблем. Что может быть причиной здесь? Это какая-то конфигурация Heroku c для загрузки файлов?
РЕДАКТИРОВАТЬ :
Кажется, что проблема исчезнет, если я перезапущу dyno, но она появляется снова, когда Дино отключается. Я использую бесплатную версию.