.net core UseResponseCompression конфликтует с атрибутом ResponseCache при размещении значений заголовка Vary.

Я использую промежуточное ПО для сжатия ответов в своем приложении .Net Core API, вызывая app.UseResponseCompression(). Но в одном из действий моего API-контроллера я также использую атрибут ResponseCache и устанавливаю для него значение VaryByHeader = Authorization, но ответ, который я получаю, получает только заголовок Vary: «Accept-Encoding», который, кажется, помещается туда Промежуточное ПО для сжатия ответов. Если я удалю промежуточное программное обеспечение, появится Vary: Authorization, поэтому я предполагаю, что промежуточное программное обеспечение конфликтует с атрибутом ResponseCache.

Как я могу получить авторизацию в заголовке Variable, а также использовать промежуточное ПО для сжатия ответов?


person gdl123    schedule 18.04.2019    source источник


Ответы (1)


По-видимому, мне нужно указать «Accept-Encoding» и «Authorization» для значения VaryByHeader, чтобы получить их оба, если используется атрибут ResponseCache с промежуточным программным обеспечением UseResponseCompression. Я не уверен, почему это так.

Я помещаю их в виде значений, разделенных запятыми, т.е. «Accept-Encoding, Authorization» для свойства VaryByHeader атрибута ResponseCache.

person gdl123    schedule 26.04.2019