Как мне изменить тип ответа Swagger? - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть API-интерфейс swagger, который использует конечную точку POST для получения файла JSON и возвращает действительную схему JSON для этого файла.

Однако, когда схема JSON создается и возвращается, строка также содержит escapeобратная косая чертаНапример, обычно правильная строка

{"$schema": "http://json-schema.org/draft-04/schema#"}

будет возвращена в Swagger API следующим образом:

"{\"$schema\": \"http://json-schema.org/draft-04/schema#\"}

Как вы видите, включенные обратные косые черты не должны присутствовать.Обратная косая черта используется для экранирования символа " в C #, однако, когда эти данные возвращаются в формате JSON, кажется, что escape-символы также печатаются, а не анализируются и удаляются.

Могу ли я в любом случае изменить тип ответа конечной точки Swagger, чтобы этого не произошло?В пользовательском интерфейсе есть раскрывающийся список, позволяющий изменить тип ответа, но доступен только application/json.

Используются версии 3.0.0 Swashbuckle.AspNetCore и Swashbuckle.AspNetCore.Swagger.

1 Ответ

0 голосов
/ 12 ноября 2018

Возвращаете ли вы универсальный тип для всех конечных точек API?Поскольку вы используете .Net Core, почему бы не использовать атрибут ProducesResponseType и указать тип возвращаемого значения, например

[ProducesResponseType(typeof(Your_Type))]
...