Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Ошибка парсинга JSON / 8 сообщений из 8, страница 1 из 1
30.08.2017, 16:28
    #39512929
drummer84
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
Помогите разобраться, как правильно работать с двойными кавычками JSON переданным в webmethod.

Есть данные которые передаю в вебметод.

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
                var testValue = { data1: "text1", data2: "text2\"text" };

                $.ajax({
                    type: "POST",
                    url: "/myurl/testJson",
                    data: "{'JsonExportData':'" + JSON.stringify(testValue) + "'}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "text",
                    success: function (data) {
                        console.log(data)
                        
                    },
                    error: function (data, status, error) {
                        console.log(data, status, error)
                    },
                    failure: function (response) {
                        console.log(response.d);
                    }
                });



В самом вебметоде, парсинг делею с помощью Newtonsoft.JSON
Код: c#
1.
JObject.Parse(JsonExportData);


Вылетает ексепшион, т.к. он не может распарсить строку с заэкраненным символом \"
Как правильно передать или распарсить данные, если символ " обязательно нужно передать ?
...
Рейтинг: 0 / 0
30.08.2017, 16:43
    #39512937
svpk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
Код: javascript
1.
2.
3.
4.
var testValue = {JsonExportData: { data1: "text1", data2: "text2\"text" } };
...
data: JSON.stringify(testValue),
...
...
Рейтинг: 0 / 0
30.08.2017, 17:18
    #39512948
drummer84
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
svpk,
500 (Internal Server Error)
даже дебаггер не срабатывает почему то (
...
Рейтинг: 0 / 0
30.08.2017, 17:42
    #39512963
monstrU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
drummer84,

может так?
contentType: "application/json; charset=utf-8",
dataType: "json",
я уже не помню документацию - contentType и dataType что описывают? ты их правильно используешь?
...
Рейтинг: 0 / 0
31.08.2017, 08:31
    #39513153
drummer84
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
monstrU,
я менял на dataType: "json" все равное ошибка.
contentType так и должен быть.
...
Рейтинг: 0 / 0
31.08.2017, 08:39
    #39513162
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
drummer84, что за ошибка-то?
...
Рейтинг: 0 / 0
31.08.2017, 09:40
    #39513198
drummer84
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
skyANA,
Ошибка то что распарсить не может.
After parsing a value an unexpected character was encountered.
...
Рейтинг: 0 / 0
06.09.2017, 11:13
    #39516269
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка парсинга JSON
drummer84,

.. у меня недавно возникла подобная проблема: метод IActionResult в контроллере MVC .Net Core (HttpPost с параметрами [FromBody]) отказывался парсить подобный JSON с кавычками и переменными разных типов (числовые и строковые) ... Костыль подставил, убрав из параметров [FromBody], а в отправляющем JS-скрипте примерно вот это:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
var sparam = {
                "seed": mySeed,
                "our_company" : MyCompanyName,                
                "myupdate" : myUpdate
            }
            $.ajax({
                type: 'POST',
                url: saveparam,
                data: sparam,                
                dataType: 'html',
                success: function (allData) {
                   console.log(allData);
                }
            });


.. т.е. отправляется не JSON, а строка аналогично form.submit() ... т.е. убрать contentType вообще, а dataType: 'html' ... Это костыль, но работает ....

ЗЫ: для всех - я знаю, что это неправильно, но найти где - не смогъ ...
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Ошибка парсинга JSON / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]