#php #rest #google-api-php-client #google-people-api
#php #rest #google-api-php-client #google-people-api
Вопрос:
У меня проблема с PHP API Google. Мне нужно получить все контакты пользователя в моем приложении. Я использую официальную библиотеку https://github.com/googleapis/google-api-php-client . Мой код, вдохновленный: https://developers.google.com/people/quickstart/php
$client->setScopes(
array(
Google_Service_PeopleService::CONTACTS,
Google_Service_PeopleService::CONTACTS_READONLY,
Google_Service_PeopleService::USERINFO_PROFILE,
Google_Service_PeopleService::USERINFO_EMAIL,
)
);
$service_contacts = new Google_Service_PeopleService($client);
$optParams = array(
'pageSize' => 10,
'personFields' => 'names,emailAddresses',
);
$results = $service_contacts->people_connections->listPeopleConnections('people/me', $optParams);
if (count($results->getConnections()) == 0) {
echo "No connections found.<br>";
} else {
echo "contacts :<br>";
foreach ($results->getConnections() as $person) {
if (count($person->getNames()) == 0) {
echo "No names found for this connection<br>";
} else {
$names = $person->getNames();
$name = $names[0];
printf("%s<br>", $name->getDisplayName());
}
}
}
но результат таков
Google_Service_PeopleService_ListConnectionsResponse {#712 ▼
#collection_key: "connections"
#connectionsType: "Google_Service_PeopleService_Person"
#connectionsDataType: "array"
nextPageToken: null
nextSyncToken: null
totalItems: null
totalPeople: null
#internal_gapi_mappings: []
#modelData: array:1 [▼
"connections" => []
]
#processed: array:1 [▼
"connections" => true
]
}
Я также пытался
$service_contacts = new Google_Service_People($client);
всегда никакого результата, как будто у меня нет контактов.
Имеет ли это смысл для кого-нибудь еще?
Ответ №1:
(Опубликовано от имени автора вопроса).
Я забыл указать адрес электронной почты пользователя :
$service_contacts->getClient()->setSubject($email); //user Email