Отправка токена проверки с помощью сообщения ajax. (сложный объект JSON) - PullRequest
0 голосов
/ 10 октября 2019

Я сталкиваюсь с некоторыми трудностями при попытке отправить объект json (со свойствами и массивом других объектов) с токеном проверки. Если я отправляю его без токена, контроллер получает его нормально, и все в порядке, после добавления токена Iстолкнулся с ошибкой сервера 500, или объект передан как ноль.

КОД, КОТОРЫЙ РАБОТАЕТ МАЛЕНЬКИМ: В ВИДЕ

 $.ajax({
             type: "POST",
             url: '@Url.Action("SaveEvaluation", "SetupEvaluation")',
             data: '{Obj:' + JSON.stringify(Obj) + '}',
             dataType: "json",
             contentType: 'application/json; charset=utf-8',
             success: function (data)
             {
                 alert(data);
             }, error: function (Response) {
                 var r = jQuery.parseJSON(Response.text);
             }
         });

И Контроллер

[HttpPost]
    public JsonResult SaveEvaluation(HR_Setup_Evaluation_Group_ViewModel Obj)
    {}

Код, который не работает (объект получен как ноль).

 var form = $('#__AjaxAntiForgeryForm');
        var token = $('input[name="__RequestVerificationToken"]', form).val();
        var JSONtoSend = JSON.stringify(Obj);


         $.ajax({
             type: "POST",
             url: '@Url.Action("SaveEvaluation", "SetupEvaluation")',
             data: { 
                 __RequestVerificationToken: token,
                 Obj: JSONtoSend
             },
             success: function (data)
             {
                 alert(data.Message);
             },
             error: function (Response)
             {
                 var r = jQuery.parseJSON(Response.text);
             }
         });

       [HttpPost]
    [ValidateAntiForgeryToken]
    public JsonResult SaveEvaluation(HR_Setup_Evaluation_Group_ViewModel Obj)
    {
    {}

Я думаю, что отправляю данные в неправильном формате, так как токен и объект исправны в отладке.

Любые идеи Спасибо.

...