Le cookie anti-falsification requis "__RequestVerificationToken" n'est pas présent

Mon site est de soulever cette exception autour de 20 fois par jour, généralement le formulaire fonctionne très bien mais il y a des cas où ce problème se produit et je ne sais pas pourquoi il est si aléatoire.

Cela est consigné exception par elmah

500 HttpAntiForgery Le nécessaire anti-contrefaçon cookie __RequestVerificationToken" n'est pas présent.

Mais la forme, c'est l'envoi de la le jeton comme indiqué sur le journal XML par elmah

<form>
    <item name="__RequestVerificationToken">
      <value string="DNbDMrzHmy37GPS6IFH-EmcIh4fJ2laezIrIEev5f4vOhsY9T7SkH9-1b7GPjm92CTFtb4dGqSe2SSYrlWSNEQG1MUlNyiLP1wtYli8bIh41"/>
    </item>
    <item name="toPhone">
      <value string="XXXXXX"/>
    </item>
    <item name="smsMessage">
      <value string="xxxxxxxx"/>
    </item>
</form>

C'est ma méthode sur le contrôleur qui utilise l'Attribut de données pour vérifier si le jeton est valide ou non

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<JsonResult> Send(SMSModel model)
{
    //my code goes here
}

C'est mon formulaire sur la vue

@using (Html.BeginForm("Send", "SMS", FormMethod.Post, new { @class = "form-sms", autocomplete = "off" }))
{
@Html.AntiForgeryToken()
<div class="row">
<div class="col-md-12">
<div class="form-group">
<div class="input-group">
<div class="input-group-addon">+53</div>
@Html.TextBoxFor(m => m.toPhone, new { @class = "form-control", placeholder = "teléfono", required = "required", type = "tel", maxlength = 8 })
</div>
</div>
</div>
</div>
<div class="form-group" style="position:relative">
<label class="sr-only" for="exampleInputEmail3">Message (up to 135 characters)</label>
@Html.TextAreaFor(m => m.smsMessage, new { rows = 4, @class = "form-control", placeholder = "escriba aquí su mensaje", required = "required", maxlength = "135" })
<span class="char-count">135</span>
</div>
if (ViewBag.Sent == true)
{
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<strong>Su mensaje ha sido enviado <span class="hidden-xs">satisfactoriamente</span></strong>
</div>
}
if (ViewBag.Error == true)
{
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<strong>Error:</strong> Por favor revise el número de teléfono.
</div>
}
<div class="errorToMany"></div>
<button type="submit" class="btn btn-default btn-block">Enviar SMS</button>
}

Et de cette façon je poste mes données à l'aide d'AJAX

$('form.form-sms').submit(function (event) {
$.ajax({
url: $(this).attr("action"),
type: "POST",
data: $(this).serializeArray(),
beforeSend: function (xhr) {
$('.btn-default').attr("disabled", true);
$('.btn-default').html("Enviando...")
},
success: function (data, textStatus, jqXHR) {
if (data[0] == false && data[1] == "1") {
some code 
} else {
location.reload();
}
},
error: function (jqXHR, textStatus, errorThrown) { }
});
return false;
});

Le formulaire fonctionne bien la plupart du temps, mais cette erreur continue à se produire et je ne sais pas pourquoi, j'ai vérifié d'autres questions ici sur un Débordement de Pile mais rien ne fonctionne pour moi.

Pour plus d'explications sur la façon dont je post les données.

Ce formulaire pour envoyer des SMS a les champs ToNumber et le Message. Lorsqu'un utilisateur clique sur le Bouton soumettre l'AJAX fonction prend le contrôle et le poster de la sérialisation de la forme du champ de données, lors de ma fonction dans le contrôleur de finitions et de retourner le résultat JSON indiquant que tout s'est bien passé, l'AJAX méthode de recharge la page montrant à l'utilisateur un message de réussite.

Les idées de ce que pourrait être l'origine de ce problème.

source d'informationauteur General Electric