Ich habe die Schritte ausgeführt, um meiner Webanwendung eine Google+ Anmeldung wie in Ссылка
Bei Verwendung in einer 'typischen' Website funktioniert der 'clientseitige' Ablauf problemlos. Jetzt versuche ich dieses Google+ Zeichen in PhoneGap zu integrieren. Da PhoneGap die Webseite als Datei: // URL ausführt, lautet der Ursprung, der in der Anfrage gesendet wird, file: //. In jedem anderen PhoneGap, das ich geschrieben habe, war das kein Problem.
Wenn ich jedoch auf der Seite von PhoneGap auf die Schaltfläche zum Anmelden bei Google+ klicke, wird der folgende Absender als Datei: // angezeigt:
Fehler: invalid_request
Ungültiger Parameterwert für den Ursprung: Fehlende Autorität: file: //
Ich ging zur Google-API-Konsole und versuchte, file: // als autorisierten Javascript-Ursprung zuzuweisen. Aber natürlich kann file: // nicht als Ursprung eingegeben werden.
Ich frage mich also, ob irgendjemand einen Einblick in diese Art von Web-Style (Javascript) Google+ von PhoneGap (oder von einer lokalen Webseite, wo es keinen Server gibt - nur eine Seite läuft) als eine Datei: //). Ich möchte wirklich nicht die Anmeldung in nativem Code machen und dann das Token wieder in den 'PhoneGap'-Bereich integrieren, da dies den Zweck, die App einmal für mehrere Plattformen zu schreiben, vereitelt.
Mein Verständnis ist, dass Sie den clientseitigen Standardfluss mit Cordova / PhoneGap nicht verwenden können, weil file://
kein gültiger Ursprung ist.
Sie können jedoch das Plug-in für In-App-Browser zusammen mit window.open
verwenden initiieren Sie einen "standardmäßigen" clientseitigen Fluss aus der Anwendung heraus. Sie hören dann Ereignisse im geöffneten Fenster, um mit den Antworten umzugehen.
Das Plugin funktioniert plattformübergreifend, so dass Sie nicht mehrere native Implementierungen verwalten müssen.
Die ng-cordova-oauth Bibliothek implementiert dies für AngularJS.
Weitere Informationen zur Implementierung finden Sie in diesem Lernprogramm Weitere Informationen sowie die Google OAuth-Dokumentation .
Für file: // funktioniert das Ding anders .. versuche das als deine Herkunft: http://localhost:4567
oder versuchen Sie dieses Tutorial: hier
Tags und Links javascript cordova google-plus