Ich versuche, die Google People-API zum Hinzufügen und Aktualisieren meiner Google-Kontakte zu verwenden. Ich habe die API fast wörtlich mit dem Beispielcode in der Google-Dokumentation (https://developers.google.com/people/v1/getting-started) eingerichtet. Ich erhalte eine Fehlermeldung für die folgende Codezeile, die wiederum aus der Dokumentation wörtlich kommt:Fehler "(get) unbekannter Parameter: 'personFields'" bei folgenden Beispielen in der Google People API-Dokumentation
$profile = $people_service->people->get('people/me', array('personFields' => 'names,emailAddresses'));
Der Fehler wird wie folgt dar:
Fatal error: Uncaught exception 'Google_Exception' with message '(get) unknown parameter: 'personFields'' in /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/src/Google/Service/Resource.php:147 Stack trace: #0 /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/vendor/google/apiclient-services/src/Google/Service/People/Resource/People.php(52): Google_Service_Resource->call('get', Array, 'Google_Service_...') #1 /home/danbak15/bakerlegalservicesmo.com/office/BLScontacts.php(36): Google_Service_People_Resource_People->get('people/me', Array) #2 {main} thrown in /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/src/Google/Service/Resource.php on line 147
Ich habe eine Antwort auf eine ähnliche Frage gesehen (Can't access my profile data when accessing google-people API) schlagen Sie vor, die Google_Service_PeopleService-Klasse anstelle der Google_Service_People-Klasse zu verwenden, wie in der Dokumentation gefordert. Allerdings, wenn ich versuche, dies zu tun, ich eine andere Fehlermeldung erhalten:
Fatal error: Uncaught exception 'Google_Service_Exception' with message '{ "error": { "code": 401, "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "errors": [ { "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.", "domain": "global", "reason": "unauthorized" } ], "status": "UNAUTHENTICATED" } } ' in /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/src/Google/Http/REST.php:118 Stack trace: #0 /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/src/Google/Http/REST.php(94): Google_Http_REST::decodeHttpResponse(Object(GuzzleHttp\Psr7\Response), Object(GuzzleHttp\Psr7\Request), 'G in /home/danbak15/bakerlegalservicesmo.com/office/google-api-php-client-2.2.0/src/Google/Http/REST.php on line 118
An diesem Punkt bin ich bei einem Totalverlust. Ich möchte Google Kontakte verwenden, um meine Kontakte zu verfolgen und mit Google Kontakte über PHP arbeiten zu können, damit ich sie zu meiner Datenbank hinzufügen kann. Kann irgendjemand etwas dazu sagen? Vielen Dank im Voraus für jede Hilfe!
UPDATE: Ich habe versucht, die Seite auf einen lokalen Server auf meinem Computer zu verschieben (vergessend, dass Google die Seite auf meine Website umleitet), um zu sehen, ob ich ein anderes Ergebnis von einem anderen Server erhalten könnte. Irgendwie funktionierte es auf magische Weise, als ich von meiner Website aus auf das Skript zugreifen wollte - etwa 15-30 Minuten oder so. Dann habe ich den gleichen Fehler wie zuvor. Wenn ich die Seite von meinem Localhost-Server aus starte, stehe ich in einer endlosen Autorisierungs-Weiterleitungsschleife (zu erwarten, da Google mich zur Online-Seite weiterleitet), aber dann funktioniert die Online-Seite eine Zeit lang.
An diesem Punkt kann ich nicht anfangen zu raten, wo das Problem ist. Macht das für irgendjemanden Sinn?
Sind Sie sicher, dass Sie die neueste Version der Client Library haben? – paolo
Ich habe das gleiche Problem, aber mit dem Google_Service_PeopleService wurde es für mich behoben; Ich schlage vor, dass Sie sich auf die Lösung des zweiten Fehlers konzentrieren. – Isaiah
Ich verwende die Version 2.2.0 der Google API PHP Client-Bibliothek, von der ich glaube, dass sie die korrekte Version ist (obwohl ich immer falsch liegen könnte). Ich bin etwas verwirrt über den Authentifizierungsanmeldungsfehler bei der Verwendung von Google_Service_PeopleService. Ich habe OAuth 2-Anmeldeinformationen, die bei Verwendung der Google_Service_People-Klasse einwandfrei funktionieren. Nur wenn ich die Google_Service_PeopleService-Klasse verwende, wird ein Fehler ausgegeben. Gibt es etwas in meinen Referenzen, das ich mir ansehen oder ändern sollte? –