برای شروع استفاده از Google Photos Library API با کتابخانه مشتری PHP، باید کتابخانه سرویس گیرنده را در محیط توسعه خود راه اندازی کنید . قبل از انجام این کار، پروژه خود را با فعال کردن API از طریق Google API Console و تنظیم شناسه مشتری OAuth 2.0 پیکربندی کنید .
برنامه شما از طرف یک کاربر Google Photos با Google Photos تعامل دارد. به عنوان مثال، وقتی آلبومهایی را در کتابخانه Google Photos کاربر ایجاد میکنید یا موارد رسانه را در حساب Google Photos کاربر آپلود میکنید، کاربر این درخواستهای API را از طریق پروتکل OAuth 2.0 مجاز میکند.
شناسه مشتری OAuth 2.0 به کاربران برنامه شما اجازه می دهد تا وارد سیستم شوند، احراز هویت و در نتیجه از کتابخانه API استفاده کنند. کتابخانه API از حسابهای سرویس پشتیبانی نمیکند. برای استفاده از این API، کاربران باید به یک حساب Google معتبر وارد شوند.
برنامه خود را پیکربندی کنید
API را فعال کنید
قبل از اینکه بتوانید از کتابخانه API استفاده کنید، باید آن را برای پروژه خود فعال کنید.
- به کنسول API Google بروید.
- از نوار منو، یک پروژه را انتخاب کنید یا یک پروژه جدید ایجاد کنید.
- برای باز کردن کتابخانه Google API، از منوی پیمایش، APIs & Services > Library را انتخاب کنید.
- «Google Photos Library API» را جستجو کنید. نتیجه صحیح را انتخاب کنید و روی Enable کلیک کنید.
شناسه مشتری OAuth 2.0 را درخواست کنید
برای درخواست شناسه مشتری OAuth و پیکربندی آن برای برنامه خود، مراحل زیر را دنبال کنید. این مثال از برنامهای استفاده میکند که در آن کل جریان OAuth در سمت سرور مدیریت میشود، مانند نمونههای ما. فرآیند راه اندازی ممکن است برای سایر سناریوهای پیاده سازی متفاوت باشد.
- به کنسول API Google بروید و پروژه خود را انتخاب کنید.
- از منو، APIs & Services > Credentials را انتخاب کنید.
- در صفحه اعتبارنامه ، روی ایجاد اعتبارنامه > شناسه مشتری OAuth کلیک کنید.
- نوع برنامه خود را انتخاب کنید. در این مثال، نوع برنامه کاربردی وب است.
مبداهایی را که برنامه شما از آنجا اجازه دسترسی به APIهای Google را دارد به شرح زیر ثبت کنید:
- برای شناسایی شناسه مشتری، یک نام وارد کنید.
در قسمت Authorized JavaScript origins ، مبدا برنامه خود را وارد کنید. این فیلد حروف عام را مجاز نمیداند.
میتوانید چندین منبع را وارد کنید تا به برنامهتان اجازه دهید روی پروتکلها، دامنهها یا زیر دامنههای مختلف اجرا شود. URL هایی که وارد می کنید مجاز به شروع درخواست OAuth هستند.
مثال زیر یک URL توسعه محلی (نمونه های ما
localhost:8080
استفاده می کنند) و یک URL تولید را نشان می دهد.http://localhost:8080 https://myproductionurl.example.com
قسمت Authorized Redirect 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 تنظیم کنید.
گزینه های دانلود
از composer برای گنجاندن کتابخانه به عنوان یک وابستگی در محیط توسعه خود استفاده کنید. دستور زیر را اجرا کنید تا کتابخانه را به پیکربندی پروژه خود اضافه کنید و آن را در پوشه vendor/
دانلود کنید.
composer require google/photos-library
همچنین میتوانید مخزن را شبیهسازی کنید یا یک تاربال فشرده را دانلود کنید .
اعتبارنامه OAuth2 خود را برای PHP تنظیم کنید
این کتابخانه مشتری با کتابخانه Google Auth برای PHP کار می کند. برای اطلاعات بیشتر، به استفاده از OAuth 2.0 با Google API Client Library برای 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 وجود دارد که می توانید آنها را امتحان کنید.