Лучший способ скрыть параметр в Swagger - PullRequest
0 голосов
/ 27 мая 2020

Я создаю API, где у меня есть пара конечных точек, где мне нужен идентификатор пользователя , поэтому после получения идеи из наиболее проголосовавшего (не принятого) ответа из этого сообщения: ASP. NET MVC Передать объект из настраиваемого фильтра действий в действие .

Я создал фильтр действий, который можно настроить только с помощью атрибута [UserIdFromToken].

Итак, я в основном получаю идентификатор пользователя через этот фильтр действий, который получает его из заголовка авторизации следующим образом:

[Authorize]
[UserIdFromToken]
public IActionResult Get(Guid userId /* Got from the [UserIdFromToken] filter */)
{
   return Ok(_userService.Get(userId));
}

Единственная проблема в том, что теперь он показывает параметр userId как Обязательный параметр (и я не хочу его вообще показывать) в моей документации Swagger, что явно неверно, поскольку мне не нужны никакие данные, кроме заголовка авторизации.

Есть ли способ получить мой чванливый уборщик документации, без показа этого параметра?

Как вы думаете, было бы лучше попробовать другой подход, чтобы получить userId, например, принятый вариант из сообщения, которое я отправил выше?

...