Aspnetcore: Le cache de réponse ne fonctionne pas pour la vue qui contient l'élément de formulaire

Créé le 17 avr. 2018  ·  3Commentaires  ·  Source: dotnet/aspnetcore

Le cache de réponse ne fonctionne pas sur la méthode suivante qui renvoie une vue contenant un élément de formulaire. Si l'élément de formulaire est supprimé de la vue, le cache de réponse fonctionne. pourquoi ça arrive?

```
[Itinéraire("Contact")]
[ResponseCache(Duration = 3600)] //Ne fonctionne pas pour cette méthode
public IActionResult Contact()
{
return Vue();
}

[HttpPost]
[Route("Contact")]
public IActionResult Contact(ContactViewModel contactViewModel, IFormFile attachment)
{
    //Necessary opertaion goes here
    return
    View(contactViewModel);
}

```

Commentaire le plus utile

Le jeton anti-contrefaçon dans le formulaire est attaché à un cookie et ni l'un ni l'autre ne doit être mis en cache, sinon ils pourraient se désynchroniser.

Tous les 3 commentaires

Regardez les en-têtes de réponse. Cela se produit-il parce que l'anti-falsification est activé sur le formulaire, ce qui définit toujours des en-têtes sans cache ?

@Tratcher Oui ! l'anti-contrefaçon a été activé et c'est pourquoi le cache de réponse ne fonctionnait pas. Ma question est pourquoi le cache de réponse ne fonctionne pas lorsque l'anti-contrefaçon est activé ?

Le jeton anti-contrefaçon dans le formulaire est attaché à un cookie et ni l'un ni l'autre ne doit être mis en cache, sinon ils pourraient se désynchroniser.

Cette page vous a été utile?
0 / 5 - 0 notes