فراخوانی APIها از پروژه Google Cloud

1. قبل از شروع

این کد لبه به شما نشان می‌دهد که چگونه یک پروژه Google Cloud ایجاد کنید و سپس APIهای Google Cloud را از آن پروژه فراخوانی کنید.

پیش نیازها

  • امکان پیمایش در Google Cloud Console.

چیزی که یاد خواهید گرفت

  • چگونه یک پروژه Google Cloud ایجاد کنیم.
  • نحوه راه اندازی حساب صورتحساب
  • نحوه راه اندازی Cloud Shell.
  • چگونه یک API را فعال کنیم.
  • نحوه مجوز API با کلید API
  • نحوه مجوز API با یک حساب سرویس

آنچه شما نیاز دارید

2. راه اندازی شوید

این بخش به شما نشان می دهد که چگونه یک پروژه Google Cloud ایجاد کنید، یک حساب صورتحساب راه اندازی کنید، و Cloud Shell را راه اندازی کنید.

یک پروژه Google Cloud ایجاد کنید و یک حساب صورتحساب راه اندازی کنید

  1. به کنسول Cloud وارد شوید و یک پروژه را انتخاب یا ایجاد کنید.

گوگل کلود

صفحه پروژه جدید

پنجره پروژه جدید که فیلدهای نام پروژه، سازمان و مکان را نشان می دهد.

شناسه پروژه را که در قسمت نام پروژه نشان داده شده است را به خاطر بسپارید. شناسه یک نام منحصر به فرد در تمام پروژه‌های Google Cloud است (نام بالا قبلاً گرفته شده است) و بعداً در این آزمایشگاه کد به عنوان PROJECT_ID نامیده می‌شود.

  1. در مرحله بعد، صورتحساب را در Cloud Console فعال کنید تا از منابع Google Cloud استفاده کنید.

اگرچه این کد لبه نباید هزینه زیادی داشته باشد، اما اگر چیزی باشد، دستورالعمل‌های موجود در بخش پاکسازی را دنبال کنید تا منابع را خاموش کنید و از هزینه‌های فراتر از این کد لبه اجتناب کنید. توجه داشته باشید که کاربران جدید Google Cloud واجد شرایط استفاده آزمایشی رایگان 300 دلاری هستند.

Cloud Shell را راه اندازی کنید

در این کد لبه، شما از Cloud Shell ، یک محیط خط فرمان که در Google Cloud اجرا می شود، استفاده می کنید. Cloud Shell یک ماشین مجازی مبتنی بر دبیان است که با تمام ابزارهای توسعه مورد نیاز شما بارگذاری شده است. این دایرکتوری خانگی 5 گیگابایتی دائمی را ارائه می دهد که عملکرد و احراز هویت شبکه را تا حد زیادی افزایش می دهد. این بدان معناست که تنها چیزی که برای این کد لبه نیاز دارید یک مرورگر است.

برای فعال کردن Cloud Shell از Cloud Console:

  1. کلیک کنید a8460e837e9f5fda.png Cloud Shell را فعال کنید .

تهیه و اتصال به محیط ممکن است چند لحظه طول بکشد.

گزینه Cloud Shell را فعال کنید.

Cloud Shell خط فرمان را نشان می دهد.

پس از اتصال به Cloud Shell، باید ببینید که قبلاً احراز هویت شده‌اید و پروژه قبلاً روی PROJECT_ID شما تنظیم شده است.

  1. لیستی از حساب های اعتباری ایجاد کنید:
gcloud auth list

شما باید این خروجی را ببینید:

Credentialed accounts:
 - <MY_ACCOUNT>@<MY_DOMAIN>.com (active)
  1. برای مشاهده لیست پروژه های خود این دستور را وارد کنید.
gcloud config list project

شما باید این خروجی را ببینید:

[core]
project = <PROJECT_ID>

اگر به دلایلی پروژه تنظیم نشد، این دستور را اجرا کنید تا پروژه راه اندازی شود.

gcloud config set project <PROJECT_ID>

PROJECT_ID شناسه ای است که در مراحل راه اندازی استفاده کردید. همچنین می توانید آن را در داشبورد Cloud Console جستجو کنید:

صفحه اطلاعات پروژه که شناسه پروژه را نشان می دهد.

Cloud Shell همچنین برخی از متغیرهای محیطی را به صورت پیش‌فرض تنظیم می‌کند که ممکن است هنگام اجرای دستورات آینده مفید باشند.

  1. برای مشاهده ID پروژه خود دستور زیر را وارد کنید.
echo $GOOGLE_CLOUD_PROJECT

شما باید خروجی زیر را ببینید:

<PROJECT_ID>
  1. در نهایت، منطقه پیش فرض و پیکربندی پروژه را تنظیم کنید.
gcloud config set compute/zone us-central1-f

شما می توانید مناطق مختلفی را انتخاب کنید. برای اطلاعات بیشتر، به مناطق و مناطق مراجعه کنید.

3. یک API از یک پروژه فراخوانی کنید

این کد لبه به شما نشان می‌دهد که چگونه از یک API مثال ( API زبان طبیعی ) برای یافتن موجودیت‌ها (مانند افراد، مکان‌ها و رویدادها) در متن استفاده کنید، و چگونه می‌توانید احساس (سطح مطلوبیت) آن متن را تقریبی کنید. شما یاد می گیرید که چگونه:

  • Google Cloud API ها را فعال کنید.
  • با کلیدهای API و حساب‌های سرویس مجوز API را دریافت کنید.
  • با کتابخانه های curl و کلاینت، API را فراخوانی کنید.

یک API را فعال کنید

  1. APIs & Services را از منوی اصلی در Cloud Console انتخاب کنید.

منوی اصلی Cloud Console که گزینه APIs & Services را نشان می دهد.

  1. + ENABLE APIS AND SERVICES را از بالای صفحه انتخاب کنید.

گزینه APIS AND SERVICES را فعال کنید.

  1. در این مرحله، می‌توانید APIها را فیلتر و مرور کنید یا مستقیماً با کادر جستجو به یک API بروید. Natural Language را جستجو کنید و Cloud Natural Language API را انتخاب کنید.

صفحه Cloud Natural Language API که دکمه‌های ENABLE و TRY THIS API را نشان می‌دهد.

  1. روی TRY THIS API کلیک کنید.

اگر دکمه TRY THIS API نشان داده نشده است، روی یکی از روش های فهرست شده کلیک کنید تا آن روش را امتحان کنید.

یک کلید API ایجاد کنید

از آنجایی که curl برای ارسال درخواست به API زبان طبیعی استفاده می‌کنید، باید یک کلید API ایجاد کنید تا در URL درخواست خود ارسال کنید.

  1. در Cloud Console، منوی پیمایش > APIs & Services > Credentials را انتخاب کنید.

منوی پیمایش که گزینه‌های API و سرویس‌ها و اعتبارنامه‌ها را نشان می‌دهد.

  1. روی CREATE CREDENTIALS کلیک کنید و سپس کلید API را انتخاب کنید:

پنجره اعتبارنامه ها که گزینه های CREATE CREDENTIALS و کلید API را نشان می دهد.

  1. کلید API ایجاد شده را کپی کنید و سپس روی Close کلیک کنید.

برای فراخوانی API از کلید API استفاده کنید

  1. در خط فرمان Cloud Shell، کلید API خود را صادر کنید.
export API_KEY=<YOUR_API_KEY>

کلیدی را که قبلاً ایجاد کرده‌اید جایگزین <YOUR_API_KEY> کنید.

  1. درخواستی برای API در Cloud Shell Editor یا با ویرایشگر لینوکس مانند Vim یا Emacs ایجاد کنید. می توانید جزئیات پارامترها را در Method: document.analyzeEntities بیابید. خروجی را در فایلی به نام request.json ذخیره کنید:
{
  "document":{
    "type":"PLAIN_TEXT",
    "content":"Google, headquartered in Mountain View (1600 Amphitheatre Pkwy, Mountain View, CA 940430), unveiled the new Android phone for $799 at the Consumer Electronic Show. Sundar Pichai said in his keynote that users love their new Android phones."
  },
  "encodingType":"UTF8"
}
  1. با اطلاعات درخواست با API تماس بگیرید.
curl "https://language.googleapis.com/v1/documents:analyzeEntities?key=${API_KEY}" \
  -s -X POST -H "Content-Type: application/json" --data-binary @request.json
  1. دستور را دوباره اجرا کنید و خروجی را به یک فایل هدایت کنید و نتیجه را بررسی کنید. جزئیات خروجی فایل JSON نیز در Method: document.analyzeEntities است.
  2. برای تغییر متن برای تجزیه و تحلیل در فایل request.json ، مقدار content را با متن انتخابی خود جایگزین کنید.

4. مجوز با یک حساب خدمات

حساب‌های سرویس اغلب بر کلیدهای API ترجیح داده می‌شوند زیرا هم احراز هویت و هم مجوز را ارائه می‌کنند. می توانید حساب های سرویس را به عنوان آدرس ایمیل برنامه خود در نظر بگیرید.

  1. به بخش Credentials در منوی APIs & Services بازگردید.
  2. Create Credentials را انتخاب کنید، اما این بار، Service Account را انتخاب کنید.

صفحه جزئیات حساب خدمات.

  1. نام حساب سرویس ارائه کنید که هدف آن را توصیف کند، مانند " Natural Language Service Account ". سیستم یک شناسه پیشنهاد می کند. شما همچنین می توانید یک توضیحات اضافه کنید. همانطور که در مورد حساب های خدمات بیشتر می آموزید، دسترسی حساب سرویس به پروژه ها را فراهم می کنید و به کاربران اجازه دسترسی به حساب سرویس را می دهید، اما در حال حاضر، برای ایجاد حساب سرویس، فقط روی Done کلیک کنید.
  2. برای ایجاد یک جفت کلید برای استفاده از حساب سرویس، کلیک کنید d489bd059474ae59.png برای ویرایش حساب سرویس

صفحه حساب های سرویس که لیستی از حساب ها را نشان می دهد.

جزئیات حساب سرویس شما نمایش داده می شود.

صفحه جزئیات حساب سرویس که جزئیات حساب خدمات زبان طبیعی را نشان می دهد.

  1. آدرس ایمیل حساب سرویس را کپی کنید و به Cloud Shell برگردید.
  2. در Cloud Shell، یک جفت کلید برای حساب سرویس خود ایجاد کنید و یک متغیر محیطی را تنظیم کنید تا به آن اشاره کند:
gcloud iam service-accounts keys create ~/key.json \
  --iam-account <your service account email>
export GOOGLE_APPLICATION_CREDENTIALS="/home/$USER/key.json"

Google Cloud از این متغیر محیطی برای یافتن اعتبارنامه ها استفاده می کند، بنابراین نیازی به گنجاندن آنها در تماس API نیست.

  1. اکنون می توانید API را با دستور زیر فراخوانی کنید:
gcloud ml language analyze-entities --content="Michelangelo Caravaggio, Italian painter, is known for 'The Calling of Saint Matthew'." 

نتیجه باید مانند قبل باشد.

بسیاری از APIها کتابخانه های سرویس گیرنده گسترده ای برای استخراج این جزئیات دارند. برای اطلاعات بیشتر در مورد کتابخانه های سرویس گیرنده، به کتابخانه های سرویس گیرنده ابر مراجعه کنید. همچنین می‌توانید اسناد APIهایی را که استفاده می‌کنید بخوانید تا ببینید چه کتابخانه‌های کلاینت برای آنها در دسترس است.

5. پاکسازی کنید

داشتن یک کلید API نامحدود برای پروژه ها کار بدی است. اگر شخصی به آن دسترسی پیدا کند، آن شخص می تواند بدون نیاز به احراز هویت از آن استفاده کند.

برای حذف این کلید API:

  1. کلیک کنید f6b6844bf5688982.png منوی پیمایش > API ها و خدمات > اعتبارنامه ها .
  2. در زیر کلیدهای API ، کلید حذف را انتخاب کنید و سپس کلیک کنید 247adf2e1d1eae4b.png حذف کنید .
  3. به طور مشابه، به جای اینکه نگران محافظت نشدن کلید خصوصی حساب سرویس خود باشید، در بخش حساب‌های خدمات ، حساب سرویس را برای حذف انتخاب کنید و سپس کلیک کنید. 247adf2e1d1eae4b.png حذف کنید .

6. تبریک می گویم

تبریک می گویم! شما یاد گرفتید که چگونه یک پروژه Google Cloud ایجاد کنید و چگونه یک API را از داخل پروژه فراخوانی کنید.