R1ZEN / react-yandex-maps

Yandex.Maps API bindings for React (fork https://github.com/gribnoysup/react-yandex-maps)
https://pbe-react-yandex-maps.vercel.app
MIT License
120 stars 19 forks source link

Не работает функционал геолокации, так как в запросах к API отсутствует заголовок Referer #74

Open spec45as opened 7 months ago

spec45as commented 7 months ago

Контекст При использовании кнопки определения геолокации на карте, библиотека идет по адресу: https://api-maps.yandex.ru/services/search/v2/ В этом запросе нужно прокидывать API-key, без него сервер будет отвечать 403

Проблема С недавнего времени, в ЛК разработчика с API ключами указание ограничения по HTTP Referer является обязательным. Если пытаться делать запросы не проставив домены в ЛК - все запросы будут получать 403, даже если ключ правильный

Мы проставили домены в ЛК. но теперь все запросы получают 401 Unauthorized

Оговорка: ЛК Яндекса в явном виде предупреждает о том, что нужно проставить ограничение. Но у нас она появилась буквально пару недель назад, ощущение что пару недель назад такого не было (возможно это точечно на наш аккаунт, а возможно новые глобальные правила использования API)

Решение В ходе дебага выяснил, что библиотека не передает заголовок "Referer" при отправке запроса в API. При этом API яндекса видимо использует данные этого заголовка для сверки с ограничениями. Если добавить руками поле Referer - все работает корректно

Можно ли добавить проброс этого поля?

IlyaLisov commented 5 months ago

Если я верно понял, то использование <YMaps query={{apikey: "xxx"}}> позволит выполнять запросы нормально.