رفتن به محتوا
هگزترا v0.13 منتشر شد! 🎉 تازه‌ها را ببینید

OpenAPI

مرور کلی

شورت‌کد openapi یک توصیف OpenAPI را با Swagger UI به‌صورت یک مرجع تعاملی API نمایش می‌دهد. خوانندگان می‌توانند عملیات، پارامترها و اسکیماها را مرور کنند و درخواست‌ها را مستقیماً از صفحه امتحان کنند. Swagger UI از پوسته‌های روشن و تیره سایت پیروی می‌کند.

مثال

استفاده

توصیف OpenAPI را با قالب JSON یا YAML به‌عنوان پارامتر اول یا با src ارسال کنید. این توصیف می‌تواند فایلی در پوشه assets/، منبعی از بسته صفحه، فایلی در پوشه static/ با مسیری که با / شروع می‌شود، یا یک URL باشد:

{{< openapi "openapi/example.yaml" >}}
{{< openapi src="https://petstore3.swagger.io/api/v3/openapi.json" >}}

فایل‌های محلی همراه با سایت منتشر می‌شوند، اما فایل‌هایی که توصیف با $ref به آن‌ها ارجاع می‌دهد منتشر نمی‌شوند: آن‌ها را نیز منتشر کنید، برای مثال در پوشه static/. مرورگر توصیف‌های راه دور را مستقیماً دریافت می‌کند، بنابراین سرور باید درخواست‌های بین‌مبدأ را مجاز کند.

Swagger UI به فضای عریض نیاز دارد: برای فضای بیشتر، width: wide یا width: full را در front matter صفحه تنظیم کنید. همچنین Swagger UI از شناسه‌های ثابت برای عناصر استفاده می‌کند، بنابراین در هر صفحه فقط یک توصیف نمایش دهید.

گزینه‌ها

پارامترتوضیحات
srcتوصیف OpenAPI. می‌توان آن را به‌عنوان پارامتر اول نیز ارسال کرد.
docExpansionنحوه باز شدن عملیات: list (پیش‌فرض)، full یا none.
defaultModelsExpandDepthعمق باز شدن بخش اسکیماها. مقدار -1 آن را پنهان می‌کند. پیش‌فرض 1 است.
filterنمایش فیلدی برای فیلتر کردن عملیات بر اساس برچسب. پیش‌فرض false است.
tryItOutEnabledباز کردن بخش «Try it out» عملیات به‌صورت پیش‌فرض. پیش‌فرض false است.
tagsSorterمقدار alpha برچسب‌ها را به ترتیب الفبا مرتب می‌کند. پیش‌فرض ترتیب توصیف است.
operationsSorterمقدار alpha یا method عملیات را مرتب می‌کند. پیش‌فرض ترتیب توصیف است.
{{< openapi src="openapi/example.yaml" docExpansion="none" filter=true tagsSorter="alpha" >}}

فایل‌های Swagger UI

Swagger UI فقط در صفحاتی بارگذاری می‌شود که از این شورت‌کد استفاده می‌کنند. به‌طور پیش‌فرض، Hextra آن را هنگام ساخت از jsDelivr دریافت می‌کند و همراه با سایت منتشر می‌کند. برای استفاده از آینه یا فایل‌های محلی، به اسکریپت‌های محلی و آینه‌شده مراجعه کنید.

آخرین به‌روزرسانی در