工具

HAL Explorer

Kai Tödter 建立了一個有用的應用:HAL Explorer (Git 倉庫, 參考文件, 演示)。它是一個基於 Angular 的 Web 應用,可以輕鬆探索基於 HAL 和 HAL-FORMS 的 HTTP 響應。它還支援 Spring Data REST 生成的 Spring profile。你可以將其指向任何 Spring Data REST API,並用它來導航應用和建立新資源。

您無需下載檔案、將其嵌入應用並編寫 Spring MVC 控制器來提供服務,只需新增一個依賴即可。

以下列表展示瞭如何在 Maven 中新增此依賴

<dependencies>
  <dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-rest-hal-explorer</artifactId>
  </dependency>
</dependencies>

以下列表展示瞭如何在 Gradle 中新增此依賴

dependencies {
    implementation 'org.springframework.data:spring-data-rest-hal-explorer'
}
如果您使用 Spring Boot 或 Spring Data BOM (物料清單),則無需指定版本。

此依賴會自動配置 HAL Explorer,當您在瀏覽器中訪問應用的根 URI 時即可使用。(注意:在瀏覽器中輸入 localhost:8080/api,它會重定向到下圖中顯示的 URL。)

hal explorer 1

上圖顯示了 API 的根路徑。右側是響應的詳細資訊,包括請求頭和響應體 (一個 HAL 文件)。

HAL Explorer 讀取響應中的連結,並將其列在左側列表中。您可以點選綠色的 GET 按鈕導航到其中一個集合,或者點選其他按鈕進行修改 (POST, PUT, PATCH) 或刪除資源。

HAL Explorer 理解 URI 模板。當連結包含 URI 模板時,會彈出一個模態對話方塊,您可以在其中輸入模板引數。

hal explorer 3

如果您點選 Go! 但未輸入任何內容,變數將基本上被忽略。對於 投影和摘錄分頁和排序 等情況,這可能很有用。

當您點選帶有 +> 符號的非 GET 按鈕時,會彈出一個模態對話方塊。它顯示了該按鈕對應的 HTTP 方法。您可以填充請求體並提交新的 JSON 文件。

在 URI 和 HTTP 方法下方是欄位。這些欄位會根據 Spring Data REST 自動生成的資源元資料自動提供。如果您更新域物件,彈窗會反映出這些變化,如下圖所示

hal explorer 2