یک پروکسی API از مشخصات OpenAPI ایجاد کنید

شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید .
اطلاعات

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

در این آموزش، شما یاد خواهید گرفت که:

  • یک پروکسی Edge API از مشخصات OpenAPI ایجاد کنید.
  • با استفاده از cURL با پراکسی API تماس بگیرید.
  • یک خط مشی را به یک جریان مشروط اضافه کنید.
  • فراخوانی خط مشی را با استفاده از cURL آزمایش کنید.

در این آموزش، نحوه ایجاد یک پروکسی Edge API از یک OpenAPI Specification با استفاده از رابط کاربری مدیریت Apigee Edge را خواهید آموخت. هنگامی که با یک کلاینت HTTP، مانند cURL، با پراکسی API تماس می گیرید، پراکسی API درخواست را به سرویس هدف ساختگی Apigee ارسال می کند.

درباره Open API Initiative

API Initiative را باز کنید
"ابتکار Open API (OAI) بر ایجاد، تکامل و ترویج یک فرمت توضیحات API خنثی فروشنده بر اساس مشخصات Swagger متمرکز است." برای اطلاعات بیشتر در مورد Open API Initiative، به https://openapis.org مراجعه کنید.

یک OpenAPI Specification از یک قالب استاندارد برای توصیف یک API RESTful استفاده می کند. مشخصات OpenAPI که در قالب JSON یا YAML نوشته شده است قابل خواندن با ماشین است، اما خواندن و درک آن برای انسان نیز آسان است. این مشخصات عناصری از یک API را به عنوان مسیر اصلی، مسیرها و افعال، سرصفحه ها، پارامترهای پرس و جو، عملیات، انواع محتوا، توضیحات پاسخ و موارد دیگر توصیف می کند. علاوه بر این، یک OpenAPI Specification معمولا برای تولید اسناد API استفاده می شود.

درباره سرویس هدف ساختگی Apigee

سرویس هدف ساختگی Apigee مورد استفاده در این آموزش در Apigee میزبانی می شود و داده های ساده را برمی گرداند. به هیچ کلید API یا نشانه دسترسی نیاز ندارد. در واقع، شما می توانید در یک مرورگر وب به آن دسترسی داشته باشید. با کلیک کردن روی موارد زیر آن را امتحان کنید:

http://mocktarget.apigee.net

سرویس هدف Hello, guest!

برای اطلاعات در مورد مجموعه کامل APIهایی که سرویس هدف ساختگی پشتیبانی می کند، روی موارد زیر کلیک کنید:

http://mocktarget.apigee.net/help

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

  • یک حساب Apigee Edge. اگر حساب ندارید، می‌توانید با دنبال کردن دستورالعمل‌های ایجاد حساب Apigee Edge ثبت‌نام کنید.
  • مشخصات OpenAPI در این آموزش، شما از مشخصات OpenAPI mocktarget.yaml استفاده خواهید کرد که سرویس هدف ساختگی Apigee، http://mocktarget.apigee.net را توصیف می کند. برای اطلاعات بیشتر، https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi را ببینید.
  • cURL روی دستگاه شما نصب شده است تا از طریق خط فرمان تماس های API برقرار کند. یا یک مرورگر وب

پروکسی API را ایجاد کنید

لبه

برای ایجاد پروکسی API از مشخصات OpenAPI با استفاده از Edge UI:

  1. به https://apigee.com/edge وارد شوید.
  2. در پنجره اصلی روی API Proxies کلیک کنید.

    همچنین، می‌توانید Develop > API Proxies را در نوار ناوبری سمت چپ انتخاب کنید.

    روی API Proxies در صفحه فرود کلیک کنید

  3. روی + Proxy کلیک کنید.
    پروکسی API را اضافه کنید
  4. در جادوگر ایجاد پروکسی، روی Use OpenAPI Spec برای الگوی Reverse Proxy (متداول ترین) کلیک کنید.
    یک نوع پروکسی بسازید
  5. روی Import from URL کلیک کنید و اطلاعات زیر را وارد کنید:
    • OpenAPI Spec URL : مسیری به محتوای خام در GitHub برای مشخصات OpenAPI در فیلد URL :
      https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget3.0.yaml
    • نام مشخصات : نامی برای مشخصات OpenAPI، مانند Mock Target .

      این نام برای ذخیره مشخصات OpenAPI در spec store استفاده می شود. به مدیریت مشخصات خود مراجعه کنید.

  6. روی Import کلیک کنید.

    صفحه جزئیات در جادوگر ایجاد پروکسی نمایش داده می شود. فیلدها با استفاده از مقادیر تعریف شده در مشخصات OpenAPI از قبل پر شده اند، همانطور که در زیر نشان داده شده است.

    جدول زیر مقادیر پیش‌فرضی را که با استفاده از ویژگی‌های OpenAPI Specification از قبل پر شده‌اند، توضیح می‌دهد. گزیده ای از مشخصات OpenAPI که ویژگی های استفاده شده را نشان می دهد در زیر جدول نشان داده شده است.

    میدان توضیحات پیش فرض
    نام نام پروکسی API. به عنوان مثال: Mock-Target-API . ویژگی title از مشخصات OpenAPI با فاصله با خط تیره جایگزین شده است
    مسیر پایه جزء مسیر که به طور منحصر به فرد این پروکسی API را در سازمان شناسایی می کند. URL عمومی این پراکسی API شامل نام سازمان شما، محیطی است که این پروکسی API در آن مستقر است و این مسیر پایه. به عنوان مثال: http://myorg-test.apigee.net/mock-target-api محتوای فیلد نام به تمام حروف کوچک تبدیل شد
    توضیحات شرح پروکسی API. ویژگی description از مشخصات OpenAPI
    هدف (API موجود) نشانی وب هدف از طرف این پروکسی API فراخوانی شده است. هر URL که از طریق اینترنت باز قابل دسترسی است می تواند استفاده شود. به عنوان مثال: http://mocktarget.apigee.net ویژگی servers از مشخصات OpenAPI

    در زیر گزیده ای از مشخصات OpenAPI ارائه می شود که ویژگی هایی را نشان می دهد که برای از قبل پر کردن فیلدها استفاده می شود.

    openapi: 3.0.0
    info:
      description: OpenAPI Specification for the Apigee mock target service endpoint.
      version: 1.0.0
      title: Mock Target API
    paths:
      /:
        get:
          summary: View personalized greeting
          operationId: View a personalized greeting
          description: View a personalized greeting for the specified or guest user.
          parameters:
            - name: user
              in: query
              description: Your user name.
              required: false
              schema:
                type: string
          responses:
            "200":
              description: Success
    ...
    servers:
      - url: http://mocktarget.apigee.net
      - url: https://mocktarget.apigee.net
    ...
    
  7. فیلد توضیحات را به صورت زیر ویرایش کنید: API proxy for the Apigee mock target service endpoint.
  8. روی Next کلیک کنید.
  9. در صفحه سیاست های مشترک ، در بخش امنیت: مجوز اطمینان حاصل کنید که Pass through (بدون مجوز) انتخاب شده است و روی Next کلیک کنید:

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

  10. در صفحه جریان، مطمئن شوید که همه عملیات انتخاب شده است.یک پروکسی بسازید
  11. روی Next کلیک کنید.
  12. در صفحه میزبان های مجازی ، پیش فرض و امن را انتخاب کنید و روی Next کلیک کنید.
    پیش فرض و امن در صفحه میزبان مجازی انتخاب شده است
  13. در صفحه Summary ، مطمئن شوید که محیط Test در قسمت Optional Deployment انتخاب شده است و روی Create and Deploy کلیک کنید:

    Apigee پروکسی API جدید شما را ایجاد می کند و آن را در محیط آزمایشی شما مستقر می کند:

  14. روی ویرایش پراکسی کلیک کنید تا صفحه نمای کلی برای پراکسی API نمایش داده شود.
    خلاصه پروکسی Mock Target API

Classic Edge (ابر خصوصی)

برای ایجاد پروکسی API از مشخصات OpenAPI با استفاده از رابط کاربری Classic Edge:

  1. به https://apigee.com/edge وارد شوید.
  2. در پنجره اصلی روی API Proxies کلیک کنید.

    همچنین، می‌توانید Develop > API Proxies را در نوار ناوبری سمت چپ انتخاب کنید.

  3. روی + Proxy کلیک کنید.
    پروکسی API را اضافه کنید
  4. در جادوگر ایجاد پروکسی، Reverse proxy (متداول ترین) را انتخاب کنید و روی Use OpenAPI کلیک کنید.
    یک نوع پروکسی بسازید
  5. روی Import from a URL کلیک کنید، یک نام برای مشخصات OpenAPI وارد کنید و مسیر محتوای خام در GitHub برای مشخصات OpenAPI را در قسمت URL وارد کنید:

    https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget.yaml
  6. روی انتخاب کلیک کنید.
  7. روی Next کلیک کنید.

    صفحه جزئیات در جادوگر ایجاد پروکسی نمایش داده می شود. همانطور که در شکل زیر نشان داده شده است، فیلدها با استفاده از مقادیر تعریف شده در مشخصات OpenAPI از قبل پر شده اند.

    جزئیات پروکسی بسازید

    جدول زیر مقادیر پیش‌فرضی را که با استفاده از ویژگی‌های OpenAPI Specification از قبل پر شده‌اند، توضیح می‌دهد. گزیده ای از مشخصات OpenAPI که ویژگی های استفاده شده را نشان می دهد در زیر جدول نشان داده شده است.

    میدان توضیحات پیش فرض
    نام پروکسی نام پروکسی API. به عنوان مثال: Mock-Target-API . ویژگی title از مشخصات OpenAPI با فاصله با خط تیره جایگزین شده است
    مسیر پایه پروکسی جزء مسیر که به طور منحصر به فرد این پروکسی API را در سازمان شناسایی می کند. URL عمومی این پراکسی API شامل نام سازمان شما، محیطی است که این پروکسی API در آن مستقر است و این مسیر پایه. به عنوان مثال: http://myorg-test.apigee.net/mock-target-api محتوای فیلد نام به تمام حروف کوچک تبدیل شد
    API موجود نشانی وب هدف از طرف این پروکسی API فراخوانی شده است. هر URL که از طریق اینترنت باز قابل دسترسی است می تواند استفاده شود. به عنوان مثال: http://mocktarget.apigee.net ویژگی servers از مشخصات OpenAPI
    توضیحات شرح پروکسی API. ویژگی description از مشخصات OpenAPI

    در زیر گزیده ای از مشخصات OpenAPI ارائه می شود که ویژگی هایی را نشان می دهد که برای از قبل پر کردن فیلدها استفاده می شود.

    openapi: 3.0.0
    info:
      description: OpenAPI Specification for the Apigee mock target service endpoint.
      version: 1.0.0
      title: Mock Target API
    paths:
      /:
        get:
          summary: View personalized greeting
          operationId: View a personalized greeting
          description: View a personalized greeting for the specified or guest user.
          parameters:
            - name: user
              in: query
              description: Your user name.
              required: false
              schema:
                type: string
          responses:
            "200":
              description: Success
    ...
    servers:
      - url: http://mocktarget.apigee.net
      - url: https://mocktarget.apigee.net
    ...
    
  8. فیلد توضیحات را به صورت زیر ویرایش کنید: API proxy for the Apigee mock target service endpoint.
  9. روی Next کلیک کنید.
  10. در صفحه جریان، مطمئن شوید که همه عملیات انتخاب شده است.یک پروکسی بسازید
  11. روی Next کلیک کنید.
  12. در صفحه امنیت، گزینه Pass through (none) را به عنوان گزینه امنیتی انتخاب کنید و روی Next کلیک کنید.
  13. در صفحه میزبان‌های مجازی، مطمئن شوید که همه میزبان‌های مجازی انتخاب شده‌اند و روی Next کلیک کنید.
  14. در صفحه Build، مطمئن شوید که محیط تست انتخاب شده است و روی Build and Deploy کلیک کنید.
  15. در صفحه خلاصه، تأییدیه ای می بینید که پروکسی API جدید شما با موفقیت ایجاد شده و در محیط آزمایشی شما مستقر شده است.
    یک خلاصه پروکسی بسازید
  16. روی Mock-Target-API کلیک کنید تا صفحه نمای کلی برای پراکسی API نمایش داده شود.
    خلاصه پروکسی Mock Target API

تبریک می گویم! شما یک پروکسی API از مشخصات OpenAPI ایجاد کرده اید. بعد شما آن را تست خواهید کرد تا ببینید چگونه کار می کند.

پروکسی API را تست کنید

می توانید API Mock-Target-API خود را با استفاده از cURL یا مرورگر وب آزمایش کنید.

در پنجره ترمینال، دستور cURL زیر را اجرا کنید. نام سازمان خود را در URL جایگزین کنید.

curl http://<org_name>-test.apigee.net/mock-target-api

پاسخ

شما باید پاسخ زیر را ببینید:

Hello, Guest!        

موفق باشی! شما یک پروکسی API ساده از یک OpenAPI Specification ساخته و آن را آزمایش کرده اید.

یک XML به خط مشی JSON اضافه کنید

سپس، خط مشی XML به JSON را به جریان مشروط View XML Response اضافه می‌کنید که به‌طور خودکار هنگام ایجاد پراکسی API از مشخصات OpenAPI ایجاد می‌شود. این خط‌مشی پاسخ XML هدف را به پاسخ JSON تبدیل می‌کند.

ابتدا با API تماس بگیرید تا بتوانید نتایج را با نتایج دریافت شده پس از افزودن خط مشی مقایسه کنید. در پنجره ترمینال دستور cURL زیر را اجرا کنید. شما در حال فراخوانی منبع /xml سرویس مورد نظر هستید که به صورت بومی یک بلوک ساده از XML را برمی گرداند. نام سازمان خود را در URL جایگزین کنید.

curl http://<org_name>-test.apigee.net/mock-target-api/xml

پاسخ

شما باید پاسخ زیر را ببینید:

<root> 
  <city>San Jose</city> 
  <firstName>John</firstName> 
  <lastName>Doe</lastName> 
  <state>CA</state> 
</root>

حالا بیایید کاری انجام دهیم که پاسخ XML را به JSON تبدیل کند. خط مشی XML به JSON را به جریان مشروط View XML Response در پراکسی API اضافه کنید.

  1. روی تب Develop در گوشه سمت راست بالای صفحه Mock-Target-API Overview در رابط کاربری Edge کلیک کنید.
    برگه توسعه دهنده
  2. در پنجره ناوبر سمت چپ، در قسمت Proxy Endpoints > پیش‌فرض، روی View XML Response flow شرطی کلیک کنید.
    View XML Response را انتخاب کنید
  3. روی دکمه پایین +Step ، مربوط به Response برای جریان کلیک کنید.
    مرحله + را انتخاب کنید
    کادر گفتگوی افزودن مرحله باز می شود تا فهرست طبقه بندی شده ای از تمام سیاست هایی که می توانید اضافه کنید نمایش داده شود.
  4. به دسته Mediation بروید و XML to JSON را انتخاب کنید.
    افزودن گفتگوی مرحله
  5. مقادیر پیش فرض را برای نمایش نام و نام نگه دارید.
  6. روی افزودن کلیک کنید. خط مشی XML به JSON برای پاسخ اعمال می شود. خط مشی XML به JSON در جریان است
  7. روی ذخیره کلیک کنید.

اکنون که خط مشی را اضافه کردید، با استفاده از cURL دوباره با API تماس بگیرید. توجه داشته باشید که هنوز همان منبع /xml را فراخوانی می کنید. سرویس هدف همچنان بلوک XML خود را برمی گرداند، اما اکنون خط مشی موجود در پراکسی API پاسخ را به JSON تبدیل می کند. این تماس را برقرار کنید:

curl http://<org_name>-test.apigee.net/mock-target-api/xml

توجه داشته باشید که پاسخ XML به JSON تبدیل می شود:

{"root":{"city":"San Jose","firstName":"John","lastName":"Doe","state":"CA"}}

تبریک می گویم! شما اجرای یک خط مشی اضافه شده به یک جریان مشروط را با موفقیت آزمایش کردید.