webentwicklung-frage-antwort-db.com.de

Möglich, Google Social Login lokal zu testen?

Ich möchte das Google Social-Anmeldesystem auf meinem lokalen Computer testen. Wenn ich jedoch eine neue OAuth-Schaltfläche erstelle: "Neue Client-ID erstellen", muss ich den autorisierten Umleitungs-URI eingeben, der eine gültige Adresse sein muss (endet mit .com oder .org).

Offensichtlich haben wir bei lokaler Entwicklung nicht das .com oder .org am Ende. Ich habe ein virtualhost-Setup ... und meine Adresse für meine lokale Entwicklung lautet mywebsite.local

Gibt es eine Möglichkeit, den Umleitungs-URI als mywebsite.local einzugeben, ohne den Fehler zu erhalten:

Ungültige Weiterleitung: http: //mywebsite.local/login/auth muss mit einer öffentlichen Top-Level-Domain enden (z. B. .com oder .org)

22
jonprasetyo

Sie können "Authorized redirect URI" auf lokale IP-Adresse setzen (z. B. http://127.0.0.1/callback ). Dies funktioniert für mich einwandfrei.

Was mich wirklich quält, ist, dass Google keine externe IP-Adresse (beispielsweise 99.99.99.99) als "Authorized redirect URI" zulässt. Google möchte, dass die "Authorized redirect URI" mit einem öffentlichen Top-Level endet Domäne (wie .com oder .org).

9
GoTop

Neben der Antwort von Pinoyyid möchten Sie Folgendes in Ihrer /etc/hosts-Datei angeben.

0.0.0.0 mywebsite.com

Ich habe nach allen anderen Regeln neue Regeln aufgestellt.

sie können dann unter mywebsite.com auf Ihre Entwicklungswebsite zugreifen und die korrekte Weiterleitungs-URL in die Google Entwicklerkonsole eingeben.

4
Tim Fletcher

Ordnen Sie Ihre dev-Server-IP-Adresse einfach dev.example.com in/etc/hosts zu.

2
pinoyyid

Der Schlüssel ist die Verwendung einer https-URL in Ihrer lokalen Umgebung.

Unter OSX können Sie ein lokales https-Zertifikat installieren: https://github.com/FiloSottile/mkcert

Oder verwenden Sie Laravel Valet.

Ihre neue localhost-URL lautet also: https://mywebsite.local

Dann speichern Sie diesen https Callback bei Google. Funktioniert auf meinem Computer 

0
Alex

Sie können Ihren lokalen Host wie hier beschrieben in eine öffentliche Site tunneln .

0
uhbif19

Meiner Erfahrung nach müssen Sie localhost oder url mit einer öffentlichen Top-Level-Domain verwenden (ich verwende .bar) und alle Weiterleitungs-URLs müssen https sein (falls Sie eine Google-App überprüfen möchten - für Blätter/Laufwerk-API erforderlich).

0
Eldair