REDOC – 一個基於 OpenAPI 的文件使用者介面

  2016 年 8 月 17 日

我們都喜歡 SwaggerUI。這是 Swagger/OpenAPI 如此受歡迎的原因之一。最近,API 文件世界出現了一些新趨勢。其中之一是三面板設計文件。競爭的 API 規格格式也有,例如,API Blueprint 有 aglio,Postman 有 Postman Documenter 等。

這就是 APIs.guru 一直在開發新的、重新設計的、基於 OpenAPI 的文件 - ReDoc 的原因。我們是為我們的客戶 Rebilly 做的。但它是完全開源且免費的!

看看我們的演示!

三面板設計

ReDoc 是以響應式三面板設計完成的

左側面板包含一個捲動同步的參考選單。中間面板包含端點/方法文件。右側面板包含各種範例:請求範例、回應範例和程式碼範例(透過供應商擴充)。

有效載荷文件

ReDoc 的主要功能是能夠記錄複雜的請求/回應有效載荷

ReDoc payload doc

如您所見,ReDoc 支援巢狀結構描述,並在適當位置顯示它們,且具有摺疊/展開的功能。

此外,您可能不相信,但 ReDoc 支援 discriminator:

ReDoc discriminator

回應文件

所有方法回應都列在方法定義下,並根據回應程式碼著色。回應還包含標頭和有效載荷文件

ReDoc responses

範例

有效載荷範例是根據 JSON 結構描述產生的。我們開發了 OpenAPI-sampler 工具,該工具產生有意義的範例。除了 typeformat 之外,它還利用規格中的 defaultenumexample 欄位。

由於範例可能很大,因此預設只會展開第一層。您甚至可以使用 「複製」 按鈕將完整的範例複製到剪貼簿

Redoc copy

如先前所述,ReDoc 透過 OpenAPI 供應商擴充支援自訂程式碼範例。請查看我們的 文件範例結構描述 以了解更多詳細資訊。

其他功能

簡單的整合

不需要後端。所有 ReDoc 資源(HTML、CSS、JS)都捆綁到一個單一檔案中,並且可以從我們的 CDN 存取。請查看最小的 index.html

<!DOCTYPE html>

<html>

<head>

<title>API 文件</title>

<!-- 行動裝置需要 -->

<meta name="viewport" content="width=device-width, initial-scale=1">

</head>

<body>

<redoc spec-url="http://petstore.swagger.io/v2/swagger.json"></redoc>

<script src="https://rebilly.github.io/ReDoc/releases/latest/redoc.min.js"></script>

</body>

</html>

簡介區段

ReDoc 從 Swagger 描述中提取第一層 Markdown 標題,並將它們提取到參考選單中!因此,您可以輕鬆地將自訂區段新增至您的 API 文件。

您的品牌標誌

ReDoc 使用 x-logo 供應商擴充,以在文件中顯示您的品牌標誌。

下一步是什麼?

我們已經開始研究新的版本。將包含哪些新功能?這取決於您的意見回饋!請隨時在我們的 GitHub 上開啟問題和功能要求。我們樂於接受您的建議!

此外,您可以聘請 APIs.guru 來協助進行 ReDoc 整合,或為您的 ReDoc 支援的文件開發獨特的外觀和風格。

別忘了在 GitHub 上為我們的專案加星號! <3