我通过调用app.UseResponseCompression()在我的.Net Core API应用程序中使用了响应压缩中间件。但是在我的一个应用程序接口控制器操作中,我也使用了ResponseCache属性并将其设置为VaryByHeader = Authorization,但是我得到的响应只得到了不同的头:"Accept-Encoding“,它似乎是由响应压缩中间件放在那里的。如果我删除中间件,则会显示Vary: Authorization,所以我猜测中间件与ResponseCache属性冲突。
我如何才能在vary头上获得授权,同时仍然能够使用Response Compression中间件?
发布于 2019-04-26 10:57:05
显然,如果在UseResponseCompression中间件中使用ResponseCache属性,我必须同时为VaryByHeader值加上"Accept-Encoding“和”Authorization值“才能同时获得这两个值。不过,我不确定为什么会这样。
我将它们作为逗号分隔值,即ResponseCache属性的VaryByHeader属性的“接受-编码,授权”。
https://stackoverflow.com/questions/55739849
复制相似问题