webentwicklung-frage-antwort-db.com.de

Diese IP-Site oder mobile Anwendung ist nicht berechtigt, diesen API-Schlüssel zu verwenden

Ich verwende https://maps.googleapis.com/maps/api/geocode/json ? Verknüpfung mit dem Server-Schlüssel und der Benutzer-IP, um den Längen- und Breitengrad einer Adresse zu finden

Ich habe einen Serverzugriffsschlüssel von Google und habe die IP-Adresse meines Servers in die Whitelist eingetragen.

Die URL, auf die ich über PHP CURL zugreifen möchte, lautet:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway ,+Mountain+View ,+CA&sensor=true&key=XXXXXXXXXX

Das Ergebnis, das ich bekomme:

Array ([error_message] => This IP, site or mobile application is not authorized to use this API key. [results] => Array ( ) [status] => REQUEST_DENIED)

Gibt es etwas, das ich konfigurieren muss ..__ Die Geokodierungs-API ist ebenfalls eingeschaltet.

74
user3336944

Ich hatte das gleiche Problem und fand es.

Für die URL wird am Ende der Serverschlüssel und nicht der API-Schlüssel für die App benötigt.

Im Grunde fügen Sie einfach den Serverschlüssel am Ende der URL wie folgt hinzu:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=yourlatitude,yourlongitude&radius=5000&sensor=true&key=SERVERKEY

Um den Serverschlüssel zu erhalten, führen Sie einfach die folgenden Schritte aus:

1) Wechseln Sie zur Entwicklerkonsole https://code.google.com/apis/console/

2) Erstellen Sie in den Anmeldeinformationen unter Öffentlicher API-Zugriff einen neuen Schlüssel

3) Wählen Sie den Serverschlüssel aus der Option aus.

4) Geben Sie Ihre IP-Adresse in das Feld ein und wenn Sie mehr IP-Adressen haben, können Sie einfach jede einzelne Zeile hinzufügen. HINWEIS: Geben Sie die IP-Adresse nur ein, wenn Sie sie zu Testzwecken verwenden möchten. Anderenfalls lassen Sie den Abschnitt IP-Adresse leer.

5) Wenn Sie fertig sind, klicken Sie auf "Erstellen" und Ihr neuer Serverschlüssel wird generiert. Anschließend können Sie diesen Serverschlüssel zu Ihrer URL hinzufügen.

Das Letzte ist, dass Sie den sensor = true nicht in die Mitte der URL setzen, sondern wie folgt am Ende einfügen können:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=yourlatitude,yourlongitude&radius=5000&key=SERVERKEY&sensor=true

Dies wird definitiv das Problem lösen und denken Sie daran, den Serverschlüssel für Places API Zu verwenden.

Hoffe, diese Antwort wird Ihnen und anderen Zuschauern helfen. Viel Glück .. :)

140
mike20132013

Neben dem Ihnen zugewiesenen API-Schlüssel überprüft Google auch die Quelle der eingehenden Anfrage, indem er entweder die Variable REFERRER oder die IP-Adresse betrachtet. Um ein Beispiel in curl auszuführen, erstellen Sie einen neuen Server Key in Google APIs Console . Beim Erstellen müssen Sie die IP-Adresse des Servers angeben. In diesem Fall ist dies Ihre lokale IP-Adresse . Nachdem Sie einen Server Key erstellt und Ihre IP-Adresse in der Whitelist aufgeführt haben, sollten Sie den neuen API-Schlüssel in curl verwenden können.

Meine Vermutung ist, dass Sie Ihren API-Schlüssel wahrscheinlich als Browser Key erstellt haben, für den Sie Ihre IP-Adresse nicht in die Whitelist aufnehmen müssen, sondern stattdessen das REFERRER-HTTP-Header-Tag zur Überprüfung verwendet. Dieses Tag wird von curl standardmäßig nicht gesendet. Daher konnte Google Ihre Anfrage nicht überprüfen.

13
Michael Venable
  1. Schlüssel wählen
  2. Registerkarte "API-Einschränkung"
  3. Wählen Sie den API-Schlüssel
  4. Sparen
  5. Wählen Sie Anwendungseinschränkung -> Keine
  6. Sparen

 enter image description here

 enter image description here

 enter image description here

 enter image description here

13
Tuan Nguyen

Die Google Places-API unterstützt derzeit keine Android- oder iOS-Schlüssel, die von der Google APIs Console generiert wurden. Derzeit werden nur Server- und Browserschlüssel unterstützt.

5
Nazrul Islam

Für die Google Place-API muss der referer-HTTP-Header beim Aufruf der API enthalten sein.

Fügen Sie den HTTP-Header "Referer: IhreDomäne.com" hinzu und dies sollte die Antwortprobleme beheben.

2
Ramesh

Sie erstellen einen Schlüssel mit out referer Geben Sie nicht die referer Adresse ein

2
DeadlyDroid

Auch die entsprechende API sollte für das gegebene Projekt aktiviert sein

https://console.developers.google.com/apis/library?project=projectnamehere

1
dav

Für die neueste Version der API scheint mir genau das Gegenteil der Fall zu sein.

Beim Aufruf der URL https://maps.googleapis.com/maps/api/geocode/json?address=<address>&key=<key> wurde der folgende Fehler angezeigt

Sie müssen einen API-Schlüssel verwenden, um jede Anforderung bei Google Maps Platform-APIs zu authentifizieren. Weitere Informationen finden Sie unter http://g.co/dev/maps-no-account

Sobald ich die Bestellung auf https://maps.googleapis.com/maps/api/geocode/json?key=<key>&address=<address> umgestellt habe, hat es gut funktioniert.

Beachten Sie, dass es sich bei der Fehlermeldung um die Nachricht handelt, die ich erhalten habe, wenn Sie direkt zur URL im Browser wechseln. Als ich die API von einem Softwareprogramm aus anrief, erhielt ich eine HTML-Antwort mit der folgenden Nachricht:

Es tut uns leid ... aber Ihr Computer oder Ihr Netzwerk sendet möglicherweise automatisierte Abfragen. Zum Schutz unserer Benutzer können wir Ihre Anfrage momentan nicht bearbeiten.

0
kilkfoe