Мне нужно создать приложение. Это приложение показывает прогноз погоды. Погодный API Google ушел. Но у Yandex есть этот API. Мой код прав, но с этим api у меня есть некоторые проблемы. В примере напишите: https://api.weather.yandex.ru/v1/forecast?geoid=213&l10n=true. Но этот пример возврат 403. https://api.weather.yandex.ru/v1/forecast?geoid=2&lang=ru_RU также возвращает 403.But как только он вернуть прогноз, то он возвращает 403.403 Запрещено в Яндексе Погода API
ответ
Если Вы используете HttpURLConnection
может быть некоторые параметры заголовка отсутствует (как content-type
или encoding
). И, вероятно, HttpURLConnection
должен быть сконфигурирован как setRequestMethod("GET");
или что-то в этом роде: HTTP-аутентификация, прокси, файлы cookie и т. Д. (См. Official Documentation).
Я использую Retrofit. Но я говорю: код работает. Когда я пытаюсь вручную ввести ссылку (не из кода), у меня есть 403 :( –
Когда я пытаюсь получить прогноз из кода, у меня есть NullPointerException, потому что yandex weather return 403 –
Обе ваши ссылки работают, поэтому проблема связана с настройками соединения ('content-type '). Используете ли вы' https' не 'http'? Или что такое' 'User-agent '' значение? –
https://tech.yandex.ru/weather/doc/dg/concepts/about-docpage/ - документация по апрельским прогнозам погоды в Яндексе. –