antiforgerytoken и отправка данных, но данные обнуляются при методе контроллера - PullRequest
0 голосов
/ 19 марта 2019

Я пытаюсь отправить antiforgerytoken, и yeniTest заполняется некоторыми данными (они не являются нулевыми) для контроллера через код ниже на странице html.

 var token = document.querySelector('input[name="__RequestVerificationToken"]').value;

    $.ajax({
        url: '@Url.Action("/TestCevabı")',
        type: 'post',
        data: { __RequestVerificationToken: token, yeniTest: JSON.stringify(yeniTest)},
        contentType: 'application/x-www-form-urlencoded; charset=utf-8',
        traditional: true
    });

Метод контроллера подобен приведенному ниже

    [HttpPost]
    [ValidateAntiForgeryToken]
    public bool TestCevabı(Test yeniTest)
    {
        ///
    }

Я передаю ValidateAntiForgeryToken при методе контроллера. Но yeniTest при методе TestCevabı имеет значение null.

1 Ответ

0 голосов
/ 19 марта 2019

Я изменил метод контроллера, как показано ниже.

[HttpPost]
[ValidateAntiForgeryToken]
public bool TestCevabı(string yeniTest)
{
    ///
}

и добавил следующий код в TestCevabıService

        Test çözülenTest = new Test();
        using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(testJsonFormat)))
        {
            DataContractJsonSerializer ser = new DataContractJsonSerializer(çözülenTest.GetType());
            çözülenTest = ser.ReadObject(ms) as Test;
            ms.Close();
        }     

Теперь проход antforgerytoken и заполнение тестового объекта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...