У меня есть следующий метод ajax, который запускает метод действия из контроллера.При выполнении описанного ниже метода я вижу ошибку: Обязательное поле формы защиты от подделки "__RequestVerificationToken" отсутствует.Но в исходном представлении, которое я вижу, есть поле формы "__RequestVerificationToken", которое я передаю ему методом действия.
Test.cshtml:
<form action="javascript: void(0)" id="frmContent">
@Html.AntiForgeryToken()
</form>
<script type="text/javascript" charset="utf8">
var vue_data = vue_data || {};
(function () {
var token = $('#frmContent input[name=__RequestVerificationToken]').val();
$.ajax({
url: '@(Url.Action("GetData", "Test"))',
type: "POST",
cache: false,
async: false,
headers: {
"__RequestVerificationToken": token
},
data: { search: $('#search').val()},
success: function (data) {
var items = jQuery.parseJSON(data);
vue_data.view_content = items.items;
}
});
})();
</script>
TestController.cs
[ValidateHeaderAntiForgeryToken]
public JsonResult GetData(string search)
{
}
Может кто-нибудь помочь мне исправить этовопрос