Инструментарий Google для идентификации Приложение PHP Quick Start предоставляет следующий блок кода, который отображает некоторую информацию о пользователе после того, как он успешно вошел в систему.
<?php if ($gitkitUser) { ?>
Welcome back!<br><br>
Email: <?= $gitkitUser->getEmail() ?><br>
Id: <?= $gitkitUser->getUserId() ?><br>
Name: <?= $gitkitUser->getDisplayName() ?><br>
Identity provider: <?= $gitkitUser->getProviderId() ?><br>
<?php } else { ?>
You are not logged in yet.
<?php } ?>
Вывод на странице выглядит так:
Email: [email protected]
Id: 123
Name: Bob User
Identity provider: facebook.com
Я хотел бы также отобразить аватар / фотографию пользователя, но не могу разобраться, как это сделать. я пробовал $gitkitUser->getPhotoUrl();
но это, кажется, ничего не возвращает, и я не могу найти хорошую документацию.
Если я print_r
$gitkitUser
объект, который я вижу, действительно есть photoUrl
и URL-адрес правильный, но он настроен как приватный, и я не могу получить к нему доступ:
Gitkit_Account Object(
[localId: Gitkit_Account: private] => 123
[email: Gitkit_Account: private] => [email protected]
[providerId: Gitkit_Account: private] => facebook.com
[providerInfo: Gitkit_Account: private] => Array([0] => Array(
[providerId] => facebook.com
[displayName] => Bob User
[photoUrl] => https: //scontent.xx.fbcdn.net/.....
[federatedId] => http://facebook.com/123 )
)
[displayName:Gitkit_Account:private] => Bob User
[photoUrl:Gitkit_Account:private] =>
[emailVerified:Gitkit_Account:private] =>
[passwordHash:Gitkit_Account:private] =>
[salt:Gitkit_Account:private] =>
)
Любые идеи относительно того, как я могу получить доступ к изображению пользователя для отображения на странице?
Да я тоже это заметил $gitkitUser->getPhotoUrl()
извлекает пустое значение Я думаю, photoUrl
не заполняется автоматически, как другие. Недавно они добавили getProviderInfo
метод, который вы можете использовать следующим образом, чтобы получить URL фотографии из первого федеративного идентификатора:
$provider_info = $gitkitUser->getProviderInfo();
$photo_url = $provider_info[0]['photoUrl'];
Других решений пока нет …