2017-10-13 4 views
0

Je veux utiliser google map api pour l'itinéraire entre deux emplacements. dans mon application IOS. j'essaye de créer la clé publique pour le projet et permets d'utiliser l'API dans la console du développeur. mais j'ai eu cette erreur: ce site ip ou application mobile n'est pas autorisé à utiliser cette API api clé. après cette erreur, j'essaie de créer une clé API pour la restriction de la clé (adresses IP (serveurs Web, tâches cron, etc.)) et définir mon adresse IP, puis le routage fonctionne correctement. mais quand j'essaye ceci d'autre dispositif encore et encore j'obtiens cette erreur. je devrais utiliser cette URL pour le routage:Google Map IPA Key

let url = "https://maps.googleapis.com/maps/api/directions/json?origin=\(origin)&destination=\(destination)&mode=driving&key=APIKEY" 

comment résoudre ce problème pour travailler mon code dans tous les appareils.

+1

Mmmmm Google – brandonscript

+0

@brandonscript j'utilise cette documentation google: https://developers.google.com/maps/documentation/directions/intro#Waypoints je devrais créer une adresse IP, cette clé crée avec une adresse ip, comment puis-je utiliser cette adresse IP pour tous les appareils? – ava

+0

Supprimez la clé API de votre question. Il n'est pas prudent de partager vos clés API. – xomena

Répondre

1

La clé API que vous utilisez avec Google Maps service Web (API Directions) prend en charge une restriction IP tel que mentionné dans le document suivant:

https://developers.google.com/maps/faq#using-google-maps-apis

Le problème est que vous ne pouvez pas connaître les adresses IP des tous les appareils sur lesquels votre application est installée.

Vous disposez des options suivantes:

  1. Utilisez la clé API sans restriction. Notez que la clé API nécessite une connexion HTTPS, de sorte que la clé API ne sera pas interceptée à partir de la demande elle-même, car la requête est cryptée. Donc, dans ce cas, vous devriez vous assurer que la clé de l'API n'est pas placée directement dans votre code source. Si vous pouvez le lire à partir de la configuration ou de l'environnement, cela pourrait être faisable.

  2. Créez un serveur intermédiaire. Votre application iOS doit envoyer des demandes au serveur intermédiaire, le serveur intermédiaire doit envoyer des demandes à Google et transmettre les réponses à votre application. Dans ce cas, vous pouvez restreindre une clé API par l'adresse IP de votre serveur intermédiaire.

J'espère que cela aide!