Кэш ответов не работает с сервером идентификации 4

#asp.net-core-webapi #identityserver4 #cache-control

#asp.net-core-webapi #identityserver4 #контроль кэша

Вопрос:

У меня есть класс запуска, настроенный следующим образом:

 public void ConfigureServices(IServiceCollection services)
{
    services.AddResponseCaching();    
    ...
}

public void Configure(IApplicationBuilder app)
{
    app.UseResponseCaching();
    ...
}
 

И мой контроллер такой:

 [HttpGet]
[ResponseCache(Duration = 30)] //I normally have a policy here but used duration as an example
[Authorize("Policy_1")]
[Authorize(LocalApi.PolicyName)]
public IActionResult Get()
{
   ...
}
 

Если я добавлю точку останова в свой метод контроллера и использую postman для отправки запроса, точка останова будет достигнута, и я смогу увидеть ключ управления кэшем в заголовках ответа:

введите описание изображения здесь

Если я снова отправлю запрос, будет достигнута точка останова (в течение срока действия).

Однако, если я удалю атрибуты авторизации и токен аутентификации из моего запроса, все будет работать так, как ожидалось.

Аутентификация и авторизация были настроены с помощью сервера идентификации 4.

И просто для подтверждения «Отправить заголовок без кэша» отключен в postman.

Итак, вопрос в том, что мне нужно добавить, чтобы кэширование ответов работало с сервером идентификации 4?