Der Antwortcache funktioniert nicht mit der folgenden Methode, die eine Ansicht mit einem Formularelement zurückgibt. Wenn das Formularelement aus der Ansicht entfernt wird, funktioniert der Antwortcache. warum passiert es?
```
[Route("Kontakt")]
[ResponseCache(Duration = 3600)] //Funktioniert nicht für diese Methode
öffentlicher IActionResult Contact()
{
Ansicht() zurückgeben;
}
[HttpPost]
[Route("Contact")]
public IActionResult Contact(ContactViewModel contactViewModel, IFormFile attachment)
{
//Necessary opertaion goes here
return
View(contactViewModel);
}
```
Sehen Sie sich die Antwortheader an. Geschieht dies, weil das Formular Anti-Forgery aktiviert hat, das immer No-Cache-Header setzt?
@Tratcher Ja! Anti-Forgery wurde aktiviert und deshalb funktionierte der Antwortcache nicht. Meine Frage ist, warum der Antwortcache nicht funktioniert, wenn Anti-Forgery aktiviert ist?
Das Anti-Fälschungs-Token im Formular ist an ein Cookie angehängt und sollte nicht zwischengespeichert werden, da es sonst aus dem Takt geraten könnte.
Hilfreichster Kommentar
Das Anti-Fälschungs-Token im Formular ist an ein Cookie angehängt und sollte nicht zwischengespeichert werden, da es sonst aus dem Takt geraten könnte.