1

spring-hateoas ライブラリを使用してハイパーメディアを実装する RESTful API を構築しています。私のエンドポイントの応答は application/hal+json です (私の DTO は ResourceSupport を拡張します)。

私は Swagger を使用してエンドポイントを文書化し、Springfox を使用して swagger-ui を自動生成しています。

問題は、生成されたドキュメントが正しくないことです。

POST エンドポイントのリクエストとして、UI は DTO の _links セクションをペイロードの一部として設定しているため、POST エンドポイントのパラメーターとして送信する必要があるのは次のとおりです。

{
  "category": "string",
  "creator": "string",
  "description": "string",
  "id": 0,
  "links": [
    {
      "href": "string",
      "rel": "string",
      "templated": true
    }
  ],
  "period": 0,
  "recipient": 0,
  "title": "string",
  "type": 0
}

私の質問は次のとおりです。springfox に application/hal+json を Parameter コンテンツ タイプとして認識させる方法はありますか? ない場合、リクエストから _links セクションを隠す方法はありますか?

4

1 に答える 1

1

したがって、リンク セクションを非表示にする唯一の方法は、ResourceSupport を拡張する DTO で setLinks メソッドをオーバーライドし、次のように hidden を true に設定することでした。

@ApiModelProperty(hidden = true)
public void setLinks(final Link... links) {
    super.add(links);
}
于 2016-08-26T10:26:43.570 に答える