Чтобы начать использовать API библиотеки Google Фото с клиентской библиотекой PHP, вам необходимо настроить клиентскую библиотеку в своей среде разработки. Прежде чем сделать это, настройте свой проект , включив API через консоль Google API и настроив идентификатор клиента OAuth 2.0.
Ваше приложение взаимодействует с Google Фото от имени пользователя Google Фото. Например, когда вы создаете альбомы в библиотеке Google Фото пользователя или загружаете мультимедийные элементы в учетную запись пользователя в Google Фото, пользователь авторизует эти запросы API через протокол OAuth 2.0 .
Идентификатор клиента OAuth 2.0 позволяет пользователям вашего приложения входить в систему, проходить аутентификацию и, таким образом, использовать API библиотеки. API библиотеки не поддерживает учетные записи служб; Чтобы использовать этот API, пользователи должны войти в действующую учетную запись Google.
Настройте свое приложение
Включить API
Прежде чем вы сможете использовать API библиотеки, вы должны включить его для своего проекта.
- Перейдите в консоль Google API .
- В строке меню выберите проект или создайте новый проект.
- Чтобы открыть библиотеку API Google, в меню навигации выберите API и службы > Библиотека .
- Найдите «API библиотеки Google Фото». Выберите правильный результат и нажмите «Включить» .
Запросить идентификатор клиента OAuth 2.0
Выполните следующие действия, чтобы запросить идентификатор клиента OAuth и настроить его для своего приложения. В этом примере используется приложение, в котором весь поток OAuth обрабатывается на стороне сервера, например, в наших примерах. Процесс установки может отличаться для других сценариев реализации .
- Перейдите в консоль Google API и выберите свой проект.
- В меню выберите API и службы > Учетные данные .
- На странице «Учетные данные» нажмите «Создать учетные данные» > «Идентификатор клиента OAuth» .
- Выберите тип приложения . В этом примере типом приложения является веб-приложение .
Зарегистрируйте источники, из которых вашему приложению разрешен доступ к API Google, следующим образом:
- Чтобы определить идентификатор клиента, введите имя.
В поле «Авторизованные источники JavaScript» введите источник вашего приложения. В этом поле нельзя использовать подстановочные знаки.
Вы можете указать несколько источников, чтобы ваше приложение могло работать на разных протоколах, доменах или поддоменах. Введенные вами URL-адреса могут запускать запросы OAuth.
В следующем примере показан локальный URL-адрес разработки (в наших примерах используется
localhost:8080
) и рабочий URL-адрес.http://localhost:8080 https://myproductionurl.example.com
Поле URI авторизованного перенаправления — это конечная точка, которая получает ответы от сервера OAuth 2.0. Обычно это включает в себя вашу среду разработки и указывает путь в вашем приложении.
http://localhost:8080/auth/google/callback https://myproductionurl.example.com/auth/google/callback
Нажмите Создать .
В появившемся диалоговом окне клиента OAuth загрузите файл JSON, содержащий конфигурацию вашего клиента. Сведения о вашем клиенте включают следующее:
- Идентификатор клиента
- Секрет клиента
Этот файл JSON будет использоваться позже для настройки библиотеки Google Auth для PHP, которая работает с этой клиентской библиотекой.
Прежде чем вы сможете запустить общедоступное приложение, имеющее доступ к API библиотеки, ваше приложение должно быть проверено Google. Когда вы тестируете приложение, на экране появляется сообщение «Непроверенное приложение», пока оно не будет проверено .
Настройте клиентскую библиотеку
Клиентская библиотека PHP обрабатывает за вас все внутренние вызовы API и предоставляет удобные для работы объекты, включая примеры кода для некоторых распространенных задач API. Сначала загрузите и установите клиентскую библиотеку Google Photos Library API для PHP вместе с зависимостями с GitHub . Затем настройте свои учетные данные OAuth2 для PHP.
Варианты загрузки
Используйте композитор , чтобы включить библиотеку в качестве зависимости в вашу среду разработки. Выполните следующую команду, чтобы добавить библиотеку в конфигурацию вашего проекта и загрузить ее в каталогvendor vendor/
.
composer require google/photos-library
Кроме того, вы также можете клонировать репозиторий или загрузить сжатый архив .
Настройте свои учетные данные OAuth2 для PHP.
Эта клиентская библиотека работает с библиотекой Google Auth для PHP . Дополнительную информацию см. в разделе Использование OAuth 2.0 с клиентской библиотекой Google API для PHP .
Используйте учетные данные аутентификации, возвращаемые библиотекой аутентификации, при настройке PhotosLibraryClient
.
Попробуйте несколько образцов
Попробуйте приведенный ниже код, чтобы выполнить первый вызов API с использованием клиентской библиотеки PHP.
use Google\Auth\Credentials\UserRefreshCredentials;
use Google\Photos\Library\V1\PhotosLibraryClient;
use Google\Photos\Library\V1\PhotosLibraryResourceFactory;
try {
// Use the OAuth flow provided by the Google API Client Auth library
// to authenticate users. See the file /src/common/common.php in the samples for a complete
// authentication example.
$authCredentials = new UserRefreshCredentials( /* Add your scope, client secret and refresh token here */ );
// Set up the Photos Library Client that interacts with the API
$photosLibraryClient = new PhotosLibraryClient(['credentials' => $authCredentials]);
// Create a new Album object with at title
$newAlbum = PhotosLibraryResourceFactory::album("My Album");
// Make the call to the Library API to create the new album
$createdAlbum = $photosLibraryClient->createAlbum($newAlbum);
// The creation call returns the ID of the new album
$albumId = $createdAlbum->getId();
} catch (\Google\ApiCore\ApiException $exception) {
// Error during album creation
} catch (\Google\ApiCore\ValidationException $e) {
// Error during client creation
echo $exception;
}
На GitHub есть еще примеры , которые вы можете попробовать.