У меня есть сайт WordPress, и я использую пакет NPM для вызова API геокодирования Google из Google и получения широты и долготы по адресу, он включает ключ API и адрес, который нужно искать. Мне пришлось ограничить мой ключ API на консоли Google, потому что я получал сообщение об ошибке, когда пытался выполнить вызов.
Пакет здесь: https://www.npmjs.com/package/@google/maps
Чего я пытаюсь добиться, так это ограничить использование моего API-ключа только на сайте. В настоящее время он ограничен только фильтрами API геокодирования, API Javascript Maps и API Places, поэтому он не будет использоваться с другими библиотеками.
Я использую только функцию геокодирования на сайте и ничего больше, поэтому нет смысла иметь Карту, но у меня есть активные библиотеки мест и карт, потому что в админке WordPress я их использую.
Я пробовал ограничение HTTP-реферера с именем домена и IP-адреса сайта с IP-адресом сервера, на котором размещается сайт, но ни один из них не работал.
У меня есть объект googleClient, который обрабатывает API геокодирования
let requested_address
googleClient.geocode({address: requested_address})
.asPromise()
.then((response) => {
// Call to another function passing the location object from response
showLocations(response.json.results[0].geometry.location)
})
.catch((err) => {
// print error message in screen
$('.results-message').show().html(err.json.error_message)
});
Я получаю сообщение об ошибке:
API keys with referer restrictions cannot be used with this API.
Я пытаюсь найти способ использовать этот же пакет с ограничениями API Key, чтобы он не использовался на других сайтах / в приложениях или другим способом для определения широты и долготы местоположения, даже если вы просто указали почтовый индекс или неполный адрес, как в Google Geocoding.