خط مشی اعتبارسنجی OAS

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

درباره خط مشی OAS Validation

خط مشی OASValidation (OpenAPI Specification Validation) شما را قادر می سازد تا یک درخواست یا پیام پاسخ دریافتی را در برابر مشخصات OpenAPI 3.0 (JSON یا YAML) تأیید کنید. ببینید چه محتوایی تایید شده است؟

خط‌مشی OASValidation نام مشخصات OpenAPI را مشخص می‌کند تا هنگام اجرای مرحله‌ای که خط‌مشی به آن پیوست شده است، برای اعتبارسنجی استفاده شود. مشخصات OpenAPI به عنوان یک منبع در مکان استاندارد زیر در بسته پروکسی API ذخیره می شود: apiproxy/resources/oas . مشخصات OpenAPI باید دارای پسوند .json ، .yml ، .yaml باشد.

با استفاده از UI یا API، همانطور که در مدیریت منابع توضیح داده شده است، مشخصات OpenAPI را به عنوان منبع به یک بسته پراکسی API اضافه کنید.

چه محتوایی تایید شده است؟

جدول زیر محتوای پیام درخواست را که توسط خط‌مشی OASValidation تأیید شده است، به تفکیک مؤلفه خلاصه می‌کند.

اجزاء درخواست اعتبار
مسیر پایه مسیر پایه تعریف شده توسط پراکسی API را تأیید می کند. مسیر پایه مشخص شده در مشخصات OpenAPI را نادیده می گیرد.
مسیر تأیید می کند که مسیر درخواست (منهای مسیر پایه) با یکی از الگوهای مسیر تعریف شده در مشخصات OpenAPI مطابقت دارد.
فعل تأیید می کند که فعل برای مسیر در مشخصات OpenAPI تعریف شده است.
درخواست بدنه پیام
  • در صورت لزوم وجود متن پیام را در درخواست تأیید می کند.
  • به صورت اختیاری، بدنه پیام را در برابر طرح بدنه درخواست عملیات در مشخصات OpenAPI تأیید می کند. این گزینه را با استفاده از <ValidateMessageBody> پیکربندی کنید

توجه: این خط‌مشی یک بدنه پیام درخواست را در برابر مشخصات OpenAPI فقط در صورتی تأیید می‌کند که Content-Type روی application/json تنظیم شده باشد. اگر نوع محتوا روی application/json تنظیم نشده باشد، اعتبار سنجی بدنه پیام درخواست به طور خودکار (بدون تایید واقعی محتوا) ارسال می شود.

پارامترها
  • تأیید می کند که پارامترهای مورد نیاز در درخواست وجود دارد، از جمله پارامترهای مسیر، هدر، پرس و جو و کوکی.
  • تأیید می کند که مقادیر پارامتر با مقادیر تعریف شده در مشخصات OpenAPI مطابقت دارد.
  • به صورت اختیاری، بررسی می کند که آیا پارامترهایی در درخواست وجود دارند که در مشخصات OpenAPI تعریف نشده اند یا خیر. این گزینه را با استفاده از <AllowUnspecifiedParameters> پیکربندی کنید

جدول زیر محتوای پیام پاسخ را که توسط خط‌مشی OASValidation تأیید شده است، بر اساس مؤلفه خلاصه می‌کند.

اجزاء اعتبار سنجی پاسخ
مسیر تأیید می کند که مسیر درخواست (منهای مسیر پایه) با یکی از الگوهای مسیر تعریف شده در مشخصات OpenAPI مطابقت دارد.
فعل تأیید می کند که فعل برای مسیر در مشخصات OpenAPI تعریف شده است.
بدنه پیام پاسخ
  • در صورت لزوم وجود متن پیام را در پاسخ تأیید می کند.
  • تأیید می‌کند که سرصفحه‌های پاسخ در مشخصات OpenAPI در پیام پاسخ وجود دارند و مقدار سرصفحه‌های پاسخ با طرح مطابقت دارد.
  • به صورت اختیاری، بدنه پیام را در برابر طرح بدنه پاسخ عملیات در مشخصات OpenAPI تأیید می کند. این گزینه را با استفاده از <ValidateMessageBody> پیکربندی کنید

نمونه ها

مثال‌های زیر برخی از روش‌هایی را نشان می‌دهند که در آنها می‌توانید از سیاست OASValidation برای اعتبارسنجی پیام‌ها در برابر مشخصات OpenAPI 3.0 استفاده کنید.

اعتبار پیام درخواست

در مثال زیر، خط مشی myoaspolicy متن پیام درخواست را در برابر طرح بدنه پیام درخواست عملیات تعریف شده در مشخصات OpenAPI my-spec.json اعتبارسنجی می کند.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.json</OASResource>
   <Options>
      <ValidateMessageBody>true</ValidateMessageBody>
   </Options>
   <Source>request</Source>
</OASValidation>

اگر متن پیام با مشخصات OpenAPI مطابقت نداشته باشد، یک خطای policies.oasvalidation.Failed برگردانده می شود.

اعتبارسنجی پارامترها

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

عنصر <OASValidation>

خط مشی اعتبارسنجی مشخصات OpenAPI را تعریف می کند.

مقدار پیش فرض به برگه سیاست پیش‌فرض در زیر مراجعه کنید
مورد نیاز؟ مورد نیاز
تایپ کنید شیء پیچیده
عنصر والد n/a
عناصر کودک <DisplayName>
<OASResource>
<Source>
<Options>
<Source>

نحو

عنصر <OASValidation> از نحو زیر استفاده می کند:

<OASValidation
  continueOnError="[true|false]"
  enabled="[true|false]"
  name="policy_name"
>
    <!-- All OASValidation child elements are optional except OASResource -->
    <DisplayName>policy_display_name</DisplayName>
    <OASResource>validation_JSON_or_YAML</OASResource>
    <Options>
        <ValidateMessageBody>[true|false]</ValidateMessageBody>
        <AllowUnspecifiedParameters>
            <Header>[true|false]</Header>
            <Query>[true|false]</Query>
            <Cookie>[true|false]</Cookie>
        </AllowUnspecifiedParameters>
    </Options>
    <Source>message_to_validate</Source>
</OASValidation>

خط مشی پیش فرض

مثال زیر تنظیمات پیش فرض را هنگام اضافه کردن یک خط مشی اعتبارسنجی OAS به جریان خود در رابط کاربری Apigee نشان می دهد:

<OASValidation continueOnError="false" enabled="true" name="OpenAPI-Spec-Validation-1">
    <DisplayName>OpenAPI Spec Validation-1</DisplayName>
    <Properties/>
    <Source>request</Source>
    <OASResource>oas://OpenAPI-Spec-Validation-1.yaml</OASResource>
</OASValidation>

این عنصر دارای ویژگی های زیر است که در همه سیاست ها مشترک است:

صفت پیش فرض ضروری؟ شرح
name N/A ضروری

نام داخلی سیاست. مقدار مشخصه name می تواند شامل حروف، اعداد، فاصله، خط تیره، زیرخط و نقطه باشد. این مقدار نمی تواند بیش از 255 کاراکتر باشد.

در صورت تمایل، از عنصر <DisplayName> برای برچسب گذاری خط مشی در ویرایشگر پروکسی UI مدیریت با نامی به زبان طبیعی دیگر استفاده کنید.

continueOnError نادرست اختیاری برای بازگرداندن خطا در صورت شکست خط مشی، روی "false" تنظیم کنید. این رفتار مورد انتظار برای اکثر سیاست ها است. روی "true" تنظیم کنید تا اجرای جریان حتی پس از شکست خط مشی ادامه یابد.
enabled درست است، واقعی اختیاری برای اجرای این خط‌مشی روی «درست» تنظیم کنید. برای «خاموش کردن» خط مشی، روی «نادرست» تنظیم کنید. این سیاست حتی اگر به یک جریان وابسته باشد اجرا نخواهد شد.
async نادرست منسوخ این ویژگی منسوخ شده است.

مرجع عنصر کودک

این بخش عناصر فرزند <OASValidation> را توصیف می کند.

<DisplayName>

علاوه بر ویژگی name برای برچسب گذاری خط مشی در ویرایشگر پروکسی رابط کاربری مدیریت با نامی متفاوت و طبیعی تر، از آن استفاده کنید.

عنصر <DisplayName> در همه خط مشی ها مشترک است.

مقدار پیش فرض n/a
مورد نیاز؟ اختیاری. اگر <DisplayName> حذف کنید، از مقدار ویژگی name خط مشی استفاده می شود
تایپ کنید رشته
عنصر والد < PolicyElement >
عناصر کودک هیچ کدام

عنصر <DisplayName> از نحو زیر استفاده می کند:

نحو

<PolicyElement>
  <DisplayName>policy_display_name</DisplayName>
  ...
</PolicyElement>

مثال

<PolicyElement>
  <DisplayName>My Validation Policy</DisplayName>
</PolicyElement>

عنصر <DisplayName> هیچ ویژگی یا عنصر فرزند ندارد.

<OASResource>

مشخصات OpenAPI را برای تأیید اعتبار مشخص می کند. شما می توانید این فایل را ذخیره کنید:

  • در محدوده پروکسی API در /apiproxy/resources/oas در بسته پروکسی API
  • در بخش Resources در نمای ناوبر ویرایشگر پروکسی API.

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

می توانید مشخصات OpenAPI را با استفاده از یک الگوی پیام، مانند {oas.resource.url} مشخص کنید. در این حالت، مقدار متغیر جریان oas.resource.url (در مهاربندهای فرفری) ارزیابی شده و در زمان اجرا در رشته payload جایگزین می‌شود. برای اطلاعات بیشتر، الگوهای پیام را ببینید.

مقدار پیش فرض هیچ کدام
مورد نیاز؟ مورد نیاز
تایپ کنید رشته
عنصر والد <OASValidation>
عناصر کودک هیچ کدام

نحو

عنصر <OASResource> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   ...
</OASValidation>

مثال

مثال زیر به مشخصات my-spec.yaml اشاره می کند که در /apiproxy/resources/oas در بسته پروکسی API ذخیره شده است:

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
</OASValidation>

عنصر <OASResource> هیچ ویژگی یا عنصر فرزند ندارد.

<گزینه ها>

گزینه های خط مشی را پیکربندی می کند.

مقدار پیش فرض n/a
مورد نیاز؟ اختیاری
تایپ کنید نوع پیچیده
عنصر والد <OASValidation>
عناصر کودک <ValidateMessageBody>
<AllowUnspecifiedParameters>

نحو

عنصر <Options> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <ValidateMessageBody>[true|false]</ValidateMessageBody>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
         <Query>[true|false]</Query>
         <Cookie>[true|false]</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

مثال

مثال زیر گزینه های سیاست را پیکربندی می کند. هر یک از گزینه ها با جزئیات بیشتر در زیر توضیح داده شده است.

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <ValidateMessageBody>false</ValidateMessageBody>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<ValidateMessageBody>

مشخص می‌کند که آیا این خط‌مشی باید بدنه پیام را در برابر طرح بدنه درخواست عملیات در مشخصات OpenAPI تأیید کند یا خیر. برای تأیید محتوای متن پیام، روی true تنظیم کنید. روی false تنظیم کنید تا فقط اعتبار پیام وجود داشته باشد.

می‌توانید با تنظیم صفت continueOnError برای عنصر <OASValidation> روی true کنترل کنید که آیا اجرای جریان پس از یک خطای اعتبارسنجی ادامه می‌یابد.

مقدار پیش فرض نادرست
مورد نیاز؟ اختیاری
تایپ کنید بولی
عنصر والد <Options>
عناصر کودک هیچ کدام

نحو

عنصر <ValidateMessageBody> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
         <ValidateMessageBody>[true|false]</ValidateMessageBody>
   </Options>
   ...
</OASValidation>

مثال

مثال زیر اعتبار محتوای متن پیام را فعال می کند:

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <ValidateMessageBody>true</ValidateMessageBody>
   </Options>
</OASValidation>

<AllowUnspecifiedParameters>

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

مقدار پیش فرض n/a
مورد نیاز؟ اختیاری
تایپ کنید نوع پیچیده
عنصر والد <Options>
عناصر کودک <Header>
<Query>
<Cookie>

نحو

عنصر <AllowUnspecifiedParameters> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
         <Query>[true|false]</Query>
         <Cookie>[true|false]</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

مثال

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
         <Query>false</Query>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

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

برای اینکه پارامترهای هدر در درخواست مشخص شوند که در مشخصات OpenAPI تعریف نشده اند، این پارامتر را روی true تنظیم کنید. در غیر این صورت، این پارامتر را روی false قرار دهید تا اجرای خط مشی با شکست مواجه شود.

مقدار پیش فرض درست است
مورد نیاز؟ بولی
تایپ کنید نوع پیچیده
عنصر والد <AllowUnspecifiedParameters>
عناصر کودک هیچ کدام

نحو

عنصر <Header> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>[true|false]</Header>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

مثال

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Header>false</Header>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<Query> (فرزند <AllowUnspecifiedParameters> )

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

برای تعیین پارامترهای پرس و جو در درخواست که در مشخصات OpenAPI تعریف نشده اند، این پارامتر را روی true تنظیم کنید. در غیر این صورت، این پارامتر را روی false قرار دهید تا اجرای خط مشی با شکست مواجه شود.

مقدار پیش فرض درست است
مورد نیاز؟ بولی
تایپ کنید نوع پیچیده
عنصر والد <AllowUnspecifiedParameters>
عناصر کودک هیچ کدام

نحو

عنصر <Query> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>[true|false]</Query>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

مثال

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>false</Query>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

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

برای اینکه اجازه دهید پارامترهای کوکی در درخواست مشخص شوند که در مشخصات OpenAPI تعریف نشده اند، این پارامتر را روی true تنظیم کنید. در غیر این صورت، این پارامتر را روی false قرار دهید تا اجرای خط مشی با شکست مواجه شود.

مقدار پیش فرض درست است
مورد نیاز؟ بولی
تایپ کنید نوع پیچیده
عنصر والد <AllowUnspecifiedParameters>
عناصر کودک هیچ کدام

نحو

عنصر <Cookie> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Query>[true|false]</Query>
      </AllowUnspecifiedParameters>
   </Options>
   ...
</OASValidation>

مثال

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Options>
      <AllowUnspecifiedParameters>
         <Cookie>false</Cookie>
      </AllowUnspecifiedParameters>
   </Options>
</OASValidation>

<Source>

پیام JSON باید در برابر حملات بارگذاری JSON ارزیابی شود. این معمولاً روی request تنظیم می‌شود، زیرا معمولاً باید درخواست‌های ورودی از برنامه‌های مشتری را ارزیابی کنید. برای ارزیابی پیام های پاسخ، روی پاسخ تنظیم کنید. برای ارزیابی خودکار پیام درخواست هنگامی که خط مشی به جریان درخواست پیوست می شود و پیام پاسخ هنگامی که خط مشی به جریان پاسخ پیوست می شود، روی پیام تنظیم کنید.

مقدار پیش فرض درخواست کنید
مورد نیاز؟ اختیاری
تایپ کنید رشته
عنصر والد <Source>
عناصر کودک هیچ کدام

نحو

عنصر <Source> از نحو زیر استفاده می کند:

<OASValidation name="policy_name">
   <OASResource>oas://specname[.json|.yaml|.yml]</OASResource>
   <Source>[message|request|response]</Source>
   ...
</OASValidation>

مثال

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

<OASValidation name="myoaspolicy">
   <OASResource>oas://my-spec.yaml</OASResource>
   <Source>message</Source>
</OASValidation>

عنصر <Source> هیچ ویژگی یا عنصر فرزند ندارد.

طرحواره ها

هر نوع خط مشی توسط یک طرح XML ( .xsd ) تعریف می شود. برای مرجع، طرح‌های خط‌مشی در GitHub در دسترس هستند.

کدهای خطا

این بخش کدهای خطا و پیام‌های خطایی را که برگردانده می‌شوند و متغیرهای خطا را که توسط Edge تنظیم می‌شوند، هنگامی که این خط‌مشی خطا را راه‌اندازی می‌کند، توضیح می‌دهد. این اطلاعات برای دانستن اینکه آیا در حال توسعه قوانین خطا برای رسیدگی به خطاها هستید، مهم است. برای کسب اطلاعات بیشتر، آنچه را که باید در مورد خطاهای خط مشی و مدیریت خطاها بدانید را ببینید.

خطاهای زمان اجرا

این خطاها ممکن است هنگام اجرای سیاست رخ دهند.

کد خطا وضعیت HTTP علت
steps.oasvalidation.Failed 500 بدنه پیام درخواست را نمی توان در برابر مشخصات OpenAPI ارائه شده تأیید کرد.
steps.oasvalidation.SourceMessageNotAvailable 500

متغیر مشخص شده در عنصر <Source> خط مشی یا خارج از محدوده است یا قابل حل نیست.

steps.oasvalidation.NotMessageVariable 500

عنصر <Source> روی متغیری تنظیم شده است که از نوع پیام نیست.

خطاهای استقرار

این خطاها ممکن است زمانی رخ دهند که یک پروکسی حاوی این خط مشی را مستقر می کنید.

نام خطا علت
ResourceDoesNotExist مشخصات OpenAPI ارجاع شده در عنصر <OASResource> وجود ندارد.
ResourceCompileFailed مشخصات OpenAPI که در استقرار گنجانده شده است حاوی خطاهایی است که از کامپایل شدن آن جلوگیری می کند. این به طور کلی نشان می دهد که مشخصات یک OpenAPI Specification 3.0 به خوبی شکل گرفته نیست.
BadResourceURL مشخصات OpenAPI ارجاع شده در عنصر <OASResource> قابل پردازش نیست. اگر فایل JSON یا YAML نباشد یا URL فایل به درستی مشخص نشده باشد، ممکن است این اتفاق بیفتد.

متغیرهای خطا

این متغیرها زمانی تنظیم می شوند که این خط مشی خطایی را در زمان اجرا ایجاد کند. برای اطلاعات بیشتر، به آنچه باید در مورد خطاهای خط مشی بدانید مراجعه کنید.

متغیرها جایی که مثال
fault.name=" fault_name " fault_name نام خطا است، همانطور که در جدول خطاهای Runtime در بالا ذکر شده است. نام خطا آخرین قسمت کد خطا است. fault.name Matches "ResourceDoesNotExist"
oasvalidation. policy_name .failed policy_name نام سیاستی است که توسط کاربر مشخص شده است که خطا را ایجاد کرده است. oasvalidation.myoaspolicy.failed = true

پشتیبانی از ویژگی های OpenAPI Specifications

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

دسته بندی پشتیبانی می شود پشتیبانی نمی شود
فرمت های نوع داده بولی
تاریخ
تاریخ-زمان
دو برابر کردن
ایمیل
شناور
int32/int64
ipv4/ipv6
md5
sha1/sha256/sha512
رشته
اوری
uri-template
uuid
باینری
بایت
رمز عبور
شیء ممیز نقشه برداری
نام ملک
N/A
شیء نوع رسانه طرحواره رمزگذاری
مثال
نمونه ها
شیء عملیات پارامترها
درخواست بدن
پاسخ ها
امنیت (پشتیبانی جزئی)
پاسخ به تماس ها
منسوخ شده است
سرورها
پارامترها شی allowEmptyValue
در ( query ، header ، path )
مورد نیاز است
پاسخ ها
طرحواره
سبک ( deepObject ، form ، formmatrix ، label ، pipeDelimited ، simple ، spaceDelimited )

توجه: deepObject فقط از پارامترهای رشته پشتیبانی می کند. آرایه ها و اشیاء تو در تو پشتیبانی نمی شوند.
اجازه رزرو شده است
منسوخ شده است
مثال
نمونه ها
محتوا
مسیرها شی حذف کنید
دریافت کنید
سر
گزینه ها
پارامترها
پچ
پست
قرار دادن
ردیابی
متغیرها
سرورها
درخواست جسم بدن application/json
application/hal+json
application/x-www-form-urlencoded (شیء encoding پشتیبانی نمی شود)
محتوا
مورد نیاز است
برنامه/xml
چند بخشی/فرم-داده
متن/ساده
متن/xml
شی پاسخ application/json
application/hal+json
application/x-www-form-urlencoded (شیء encoding پشتیبانی نمی شود)
محتوا
سرصفحه ها
برنامه/xml
پیوندها
متن/ساده
متن/xml
شی پاسخ می دهد پیش فرض
کد وضعیت HTTP
N/A
شی طرحواره $ref
خواص اضافی (فقط نوع پرچم بولین)
allOf (اگر additionalProperties false باشد نادیده گرفته می شود)
هریک از
enum
منحصر به فرد حداکثر / انحصاری حداقل
قالب
موارد
حداکثر/حداقل
maxItems/minItems
حداکثر طول / دقیقه طول
maxProperties/minProperties
چندگانه از
نه
باطل شدنی
یکی از
الگو
خواص
مورد نیاز است
عنوان
نوع
منحصر به فرد
منسوخ شده است
مثال
فقط خواندنی
فقط نوشتن
xml
شی طرح امنیتی در ( header ، query ) (اگر type http باشد نادیده گرفته می شود)
نام
تایپ کنید ( apiKey ، http )
فرمت حامل
جریان می یابد
openIdConnectUrl
طرح
شی سرور آدرس اینترنتی
متغیرها
تعاریف چند سرور

موضوعات مرتبط