جستجوگر APIهای گوگل به صورت پویا نمونههای کد تولید میکند. این نمونههای کد طوری طراحی شدهاند که بتوان آنها را کپی و به صورت محلی اجرا کرد. برای مشاهده نمونهها، در پنل کناری جستجوگر APIها، روی گزینه «تمام صفحه» (Full screen کلیک کنید. شکل زیر، جستجوگر APIهای تمام صفحه توسعهیافته را نشان میدهد:


به طور پیشفرض، API Explorer نحوه استفاده از cURL برای اجرای درخواست شما را نشان میدهد. برخی از APIها ممکن است نمونههایی را برای زبانهای دیگر مانند جاوا اسکریپت، جاوا و پایتون نیز نشان دهند.
اجرای نمونههای کد به صورت محلی
تبهای زیر پیشنیازها و مراحل اجرای نمونههای کد را توضیح میدهند. برای اجرای نمونههای کد، باید اعتبارنامههای مجوز خود را ایجاد و استفاده کنید. برای توضیح نحوه ایجاد یک پروژه و تولید اعتبارنامهها، به مستندات API گوگل خاص خود مراجعه کنید.
اعتبارنامهها بسته به نوع داده (عمومی یا خصوصی) که متد به آن دسترسی دارد، یکی از موارد زیر هستند:
- برای دادههای عمومی، اعتبارنامه یک کلید API است.
برای دادههای خصوصی، اعتبارنامه یا یک فایل
client_secret.jsonحاوی شناسه کلاینت OAuth 2.0 و رمز کلاینت شما یا یک توکن دسترسی OAuth 2.0 است.
حلقه
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- در کنسول ابری، یک کلید API ایجاد کنید.
- در کنسول ابری، یک اعتبارنامهی OAuth client ID برای یک برنامهی وب ایجاد کنید و
https://developers.google.com/oauthplaygroundبه عنوان URL تغییر مسیر استفاده کنید. - در محیط OAuth 2.0 Playground ، پیکربندی OAuth 2.0 کلیک کنید.
- گزینه «از اعتبارنامههای خودتان استفاده کنید» را تیک بزنید.
- شناسه کلاینت و رمز کلاینت تولید شده در مرحله ۳ را وارد کنید.
- در فیلد scopes، محدودهای که میخواهید با متد شما استفاده شود را تایپ کنید و روی Authorize APIs کلیک کنید.
- (اختیاری) اگر صفحه ورود به سیستم نمایش داده شد، حسابی را که میخواهید استفاده کنید انتخاب کنید.
- (اختیاری) اگر صفحه مجوز نمایش داده شد، روی «پذیرش» کلیک کنید.
- برای توکنها روی کد مجوز اکسچنج کلیک کنید. یک توکن برگردانده میشود.
- در نمونه کد cURL، عبارت
[YOUR_API_KEY]را با کلید API تولید شده در مرحله 2 جایگزین کنید:'https://www.googleapis.com/drive/v3/files?key= [YOUR_API_KEY] ' \ - در نمونه کد cURL،
[YOUR_ACCESS_TOKEN]را با توکن دسترسی تولید شده در مرحله 10 جایگزین کنید:--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN] ' \
اجرای نمونه کد
از خط فرمان، دستور cURL را اجرا کنید. دستور باید مشابه این باشد:
curl \
'https://www.googleapis.com/drive/v3/files?key=AIzaSyBiKcaoXmVApwnT24hitQG_dwjGvAj6Ddw' \
--header 'Authorization: Bearer ya29.a0ARrdaM_yQn9MWBpJgKPx880BSnRYIizRYIDz0JN9e66nSliIYpqNXmPsvv2ccfplCTG_U4b1' \
--header 'Accept: application/json' \
--compressed
جاوا اسکریپت
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- در کنسول ابری، یک کلید API ایجاد کنید.
- در کنسول ابری، یک اعتبارنامه شناسه کلاینت OAuth برای یک «برنامه وب» ایجاد کنید و مبدأهای مجاز جاوا اسکریپت را برای شناسایی URL که از آن درخواستها را ارسال خواهید کرد، مانند
http://localhost، تنظیم کنید. - نمونه کد کامل را در یک فایل محلی که برای وب سرور شما قابل دسترسی است، مانند
/var/www/html/example.html، کپی کنید. خطی را در نمونه کد که کلید API یا شناسه کلاینت را تنظیم میکند، پیدا کنید و مقدار آن را با مقادیر تولید شده در مرحله ۲ و ۳ جایگزین کنید:
- کلید API:
gapi.client.setApiKey( YOUR_API_KEY ); - شناسه کلاینت OAuth 2.0:
gapi.client.init({ 'clientId': ' YOUR_CLIENT_ID ',
- کلید API:
اجرای نمونه کد
- فایل را در مرورگر خود، مانند
http://localhost/example.html، باز کنید. توصیه میکنیم از مرورگری با کنسول اشکالزدایی مانند گوگل کروم استفاده کنید. - (اختیاری) اگر صفحه ورود به سیستم نمایش داده شد، حسابی را که میخواهید استفاده کنید انتخاب کنید.
- (اختیاری) اگر صفحه مجوز نمایش داده شد، روی پذیرش کلیک کنید. کنسول اشکالزدایی باید پاسخ متد را به عنوان یک شیء JSON نمایش دهد.
جاوا
پیشنیازها
- جاوا ۱.۷ یا بالاتر.
- معدل ۷ یا بالاتر.
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- بسته به نوع دادهای که متد به آن دسترسی دارد، یک کلید API (دادههای عمومی) یا یک شناسه کلاینت OAuth 2.0 (دادههای خصوصی) ایجاد کنید.
- نوع برنامه را روی برنامه دسکتاپ تنظیم کنید.
- اگر یک شناسه کلاینت OAuth 2.0 ایجاد کردهاید، فایل JSON حاوی اطلاعات احراز هویت OAuth 2.0 خود را دانلود کنید. نام این فایل چیزی شبیه به
client_secret_ CLIENTID .jsonاست که در آنCLIENTIDشناسه کلاینت پروژه شماست. در دایرکتوری کاری خود، دستورات زیر را برای ایجاد ساختار پروژه جدید اجرا کنید:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resourcesاگر در مرحله ۲ یک شناسه کلاینت OAuth 2.0 ایجاد کردهاید، نام فایل JSON که دانلود کردهاید را به
client_secret.jsonتغییر دهید.فایل تغییر نام داده شده را در دایرکتوری
src/main/resourcesکه در مرحله ۵ ایجاد کردید، ذخیره کنید.در دایرکتوری کاری خود، فایل
build.gradleرا باز کنید و محتویات آن را با موارد زیر جایگزین کنید:apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' API_SPECIFIC_DEPENDENCY }در فایل
build.gradle، خطی که میگویدAPI_SPECIFIC_DEPENDENCYبا دستورالعملی برای کامپایل کد مربوط به API که فراخوانی میکنید، جایگزین کنید. در اینجا نمونهای از API YouTube Analytics آورده شده است:compile 'com.google.apis:google-api-services-youtubeAnalytics:v2-rev16-1.23.0'دستورالعمل از این الگو پیروی میکند:
compile 'com.google.apis:google-api-services-API_NAME:API_VERSION- revREVISION-CL_VERSION'
کجا:
-
API_NAMEنام API فهرستشده در گیتهاب برای API است. برای یافتن نام، روی لینک نسخه در کنار API خود در صفحه Supported Google APIs کلیک کنید. لینک نسخه به گیتهاب هدایت میشود. نام API در قسمت بالای صفحه و وسط آن قرار دارد و قبل از آنgoogleapis/google-apis-services-آمده است. به عنوان مثال، برای نسخه ۳ API درایو،API_NAMEdriveاست. -
API_VERSIONنسخه API فهرست شده برای API است که در زیر نام API در صفحه APIهای پشتیبانی شده گوگل ذکر شده است. -
REVISIONشمارهی ویرایش ذکر شده در مرجع JavaDoc برای API است. مرجع JavaDoc را میتوانید درhttps://googleapis.dev/java/google-api-services- API_NAME /latest/index.htmlبیابید. -
CL_VERSIONنسخه کتابخانه کلاینت است. این مقدار همچنین در مرجع JavaDoc ظاهر میشود. - از دایرکتوری کاری خود، نمونه کد را از APIs Explorer به
src/main/java/ApiExample.javaکپی کنید. (نام کلاس در هر نمونهApiExampleاست، بنابراین نیازی به تغییر فایلbuild.gradleبرای اجرای نمونههای مختلف ندارید.)
اجرای نمونه کد
برای اجرای مثال از دستور زیر استفاده کنید:
gradle -q run
این نمونه باید درخواست API شما را اجرا کند و پاسخ را در STDOUT چاپ کند. همچنین میتوانید سرویسی را که فراخوانی میکنید بررسی کنید تا اثرات درخواستهایی که دادهها را مینویسند را ببینید.
نود جی اس
پیشنیازها
- نود جی اس
کتابخانه کلاینت APIهای گوگل برای Node.js:
- اگر قبلاً کتابخانه کلاینت را نصب نکردهاید، دستور زیر را اجرا کنید:
npm install googleapis --save- اگر قبلاً کتابخانه کلاینت را نصب کردهاید، توصیه میکنیم آن را بهروزرسانی کنید تا مطمئن شوید که بهروزترین کلاسها را برای کتابخانهای که آزمایش میکنید، دارید. برای بهروزرسانی کتابخانه کلاینت، دستور زیر را اجرا کنید:
npm update googleapis --save
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- بسته به نوع دادهای که متد به آن دسترسی دارد، یک کلید API (دادههای عمومی) یا یک شناسه کلاینت OAuth 2.0 (دادههای خصوصی) ایجاد کنید.
- نوع برنامه را روی برنامه دسکتاپ تنظیم کنید.
- اگر یک شناسه کلاینت OAuth 2.0 ایجاد کردهاید، فایل JSON حاوی اطلاعات احراز هویت OAuth 2.0 خود را دانلود کنید. نام این فایل چیزی شبیه به
client_secret_ CLIENTID .jsonاست که در آنCLIENTIDشناسه کلاینت پروژه شماست. - نمونه کد را در یک فایل محلی کپی کنید و نمونه را طوری تغییر دهید که کلید API یا فایل اسرار کلاینت شما را به درستی شناسایی کند. در این نمونه، مقدار کلید API برابر با
YOUR_API_KEYو محل فایل اسرار کلاینتYOUR_CLIENT_SECRET_FILE.jsonاست.
اجرای نمونه کد
برای اجرای مثال از دستور زیر استفاده کنید:
node sample.js
اکثر نمونهها یک پاسخ API (یا چیز دیگری) را به STDOUT چاپ میکنند.
پی اچ پی
پیشنیازها
- PHP 5.4 یا بالاتر با رابط خط فرمان (CLI) و افزونه JSON.
- ابزار مدیریت وابستگی Composer که به صورت سراسری نصب شده است.
کتابخانه کلاینت APIهای گوگل برای PHP:
اگر قبلاً کتابخانه کلاینت را نصب نکردهاید، دستور زیر را اجرا کنید:
composer require google/apiclient:^2.0اگر قبلاً کتابخانه کلاینت را نصب کردهاید، توصیه میکنیم آن را بهروزرسانی کنید تا مطمئن شوید که بهروزترین کلاسها را برای کتابخانهای که آزمایش میکنید، دارید. برای بهروزرسانی کتابخانه کلاینت، دستور زیر را اجرا کنید:
composer update google/apiclient --with-dependencies
اجرای نمونه کد
برای اجرای مثال از دستور زیر استفاده کنید:
php sample.php
اکثر نمونهها یک پاسخ API (یا چیز دیگری) را به STDOUT چاپ میکنند.
پایتون
پیشنیازها
- پایتون ۲.۷ یا پایتون ۳.۵+
- ابزار مدیریت بسته pip
کتابخانه کلاینت APIهای گوگل برای پایتون:
pip install --upgrade google-api-python-clientکتابخانههای
google-auth-oauthlibوgoogle-auth-httplib2برای احراز هویت کاربر:pip install --upgrade google-auth-oauthlib google-auth-httplib2
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- بسته به نوع دادهای که متد به آن دسترسی دارد، یک کلید API (دادههای عمومی) یا یک شناسه کلاینت OAuth 2.0 (دادههای خصوصی) ایجاد کنید.
- نوع برنامه را روی برنامه دسکتاپ تنظیم کنید.
- اگر یک شناسه کلاینت OAuth 2.0 ایجاد کردهاید، فایل JSON حاوی اطلاعات احراز هویت OAuth 2.0 خود را دانلود کنید. نام این فایل چیزی شبیه به
client_secret_ CLIENTID .jsonاست که در آنCLIENTIDشناسه کلاینت پروژه شماست. - نمونه کد را در یک فایل محلی کپی کنید و نمونه را طوری تغییر دهید که کلید API یا فایل اسرار کلاینت شما را به درستی شناسایی کند. در این نمونه، مقدار کلید API برابر با
YOUR_API_KEYو محل فایل اسرار کلاینتYOUR_CLIENT_SECRET_FILE.jsonاست.
اجرای نمونه کد
برای اجرای مثال از دستور زیر استفاده کنید:
python sample.py
اکثر نمونهها یک پاسخ API (یا چیز دیگری) را به STDOUT چاپ میکنند.
روبی
پیشنیازها
- روبی ۲.۰ یا بالاتر
کتابخانه کلاینت APIهای گوگل برای روبی:
gem install google-api-client`
تنظیم کنید
- برای ایجاد یا انتخاب یک پروژه برای برنامه خود و فعال کردن API، دستورالعملهای موجود در مستندات API را دنبال کنید.
- بسته به نوع دادهای که متد به آن دسترسی دارد، یک کلید API (دادههای عمومی) یا یک شناسه کلاینت OAuth 2.0 (دادههای خصوصی) ایجاد کنید.
- نوع برنامه را روی برنامه دسکتاپ تنظیم کنید.
- اگر یک شناسه کلاینت OAuth 2.0 ایجاد کردهاید، فایل JSON حاوی اطلاعات احراز هویت OAuth 2.0 خود را دانلود کنید. نام این فایل چیزی شبیه به
client_secret_ CLIENTID .jsonاست که در آنCLIENTIDشناسه کلاینت پروژه شماست. - نمونه کد را در یک فایل محلی کپی کنید و نمونه را طوری تغییر دهید که کلید API یا فایل اسرار کلاینت شما را به درستی شناسایی کند. در این نمونه، مقدار کلید API برابر با
YOUR_API_KEYو محل فایل اسرار کلاینتYOUR_CLIENT_SECRET_FILE.jsonاست.
اجرای نمونه کد
برای اجرای مثال از دستور زیر استفاده کنید:
ruby sample.rb
اکثر نمونهها یک پاسخ API (یا چیز دیگری) را به STDOUT چاپ میکنند.
رفع مشکلات نمونه
گفتگوی مجوز ظاهر نمیشود
مرورگر APIها از یک پنجرهی بازشو برای اعطای دسترسی به دادههای خصوصی شما استفاده میکند. اگر مرورگر شما پنجرههای بازشو را مسدود کند، این پنجره ظاهر نمیشود و شما نمیتوانید دسترسی را اعطا کنید.
اگر در صفحه مجوز روی «مجاز» کلیک کردید و هیچ اتفاقی نیفتاد، تنظیمات پنجرههای بازشو مرورگر خود را تغییر دهید تا پنجرههای بازشو فعال شوند.
خطای ۴۰۱ یا ۴۰۳ دریافت کردم
اگر هنگام آزمایش یک نمونه با خطای ۴۰۱ یا ۴۰۳ مواجه شدید، احتمالاً به دلیل مشکل در یکی از موارد زیر است:
- API برای پروژه شما فعال نیست. دستورالعملهای API خود را در مورد نحوه ایجاد یک پروژه و فعال کردن API بررسی کنید.
- شما از نوع مجوز اشتباه (کلید API به جای OAuth 2.0) استفاده میکنید.
- شما از OAuth 2.0 استفاده میکنید، اما با دامنهی بسیار محدود.
- وقتی کلید API خود را تنظیم میکنید، محدودیتهایی را برای جلوگیری از استفاده غیرمجاز از اعتبارنامههای خود تنظیم میکنید. با این حال، درخواست این محدودیتها را برآورده نمیکند. برای اطلاعات بیشتر، به «استفاده از محدودیتهای کلید API» مراجعه کنید.
اخطاری در مورد محتوای ترکیبی دریافت کردم
اگر از نقاط پایانی گوگل کلود استفاده میکنید و نقطه پایانی خود را در یک سرور توسعه اجرا میکنید، ممکن است مرورگر شما هشداری در مورد محتوای ترکیبی (mixed content) بدهد. این هشدار به این دلیل رخ میدهد که API Explorer از طریق HTTPS بارگذاری میشود، اما وقتی API شما به صورت محلی اجرا میشود، روی HTTP میزبانی میشود.
برای پنهان کردن این هشدار با استفاده از کروم، یک جلسه کروم را با پرچمهای ویژه به شرح زیر شروع کنید:
path/to/chrome --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:port
برای مثال:
/usr/bin/google-chrome-stable --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080
شما فقط باید این هشدار را برای اهداف آزمایشی محلی پنهان کنید.
فقط جاوا اسکریپت: gapi تعریف نشده است
خطای "gapi تعریف نشده است" زمانی رخ میدهد که کد جاوا اسکریپت سعی میکند کتابخانه کلاینت API گوگل را برای جاوا اسکریپت قبل از بارگذاری کامل کتابخانه فراخوانی کند. مطمئن شوید که کدی که به متغیر gapi اشاره میکند، تا بعد از بارگذاری کامل کتابخانه کلاینت فراخوانی نشود.