响应缓存不适用于以下返回包含表单元素的视图的方法。如果表单元素从视图中移除,则响应缓存有效。 为什么会这样?
``
[路线(“联系方式”)]
[ResponseCache(Duration = 3600)] //对这个方法不起作用
公共 IActionResult 联系人()
{
返回视图();
}
[HttpPost]
[Route("Contact")]
public IActionResult Contact(ContactViewModel contactViewModel, IFormFile attachment)
{
//Necessary opertaion goes here
return
View(contactViewModel);
}
``
查看响应头。 发生这种情况是因为表单启用了防伪,始终设置无缓存标头?
@Tratcher是的! 启用了防伪,这就是响应缓存不起作用的原因..我的问题是为什么启用防伪时响应缓存不起作用?
表单中的防伪令牌附加到 cookie,两者都不应该被缓存,否则它们可能会不同步。
最有用的评论
表单中的防伪令牌附加到 cookie,两者都不应该被缓存,否则它们可能会不同步。