Имя: Пароль:
1C
1С v8
Json - читалка.
,
0 JastAMan
 
13.07.16
06:59
Правильно ли я понял суть Json-читалки?
-----------------------------------------------------

Соединение = Новый HTTPСоединение("localhost/zzz_trade",,,"",,,,);    
  
Запрос = Новый HTTPЗапрос("/odata/standard.odata/Catalog_Контрагенты?$select=Ref_Key&$filter=ИНН eq '9709xxxx220'&$format=json"); //Number,%20Date&$format=json");
Ответ  = Соединение.Получить(Запрос);
ТелоЗапроса = Ответ.ПолучитьТелоКакСтроку() ;
ЧтениеJson = Новый ЧтениеJSON();
ЧтениеJson.УстановитьСтроку(ТелоЗапроса);
...
-------------------------------------------------------------
Правильно ли понимаю, что далее нужно последовательно читать Json, анализируя, в каком разделе находится шаг цикла и решать что делать. Т.е. городить цикл-разбиралку-думалку?
1 Starhan
 
13.07.16
07:07
Не правильно.
2 DrZombi
 
гуру
13.07.16
07:09
(0) Запусти отладчик
3 Starhan
 
13.07.16
07:09
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON .УстановитьСтроку(ТекстJSON);
    
СтруктураДанных = ПрочитатьJSON(ЧтениеJSON);
    
Возврат СтруктураДанных;
4 JastAMan
 
13.07.16
07:09
Запускал. Видел разделы: Начало объекта, Начало массива и т.д.
5 JastAMan
 
13.07.16
07:11
(3) Т.е. СтруктураДанных = настоящая структура?
6 Starhan
 
13.07.16
07:11
(5) да.
7 JastAMan
 
13.07.16
07:24
(6) Вчера пытался сделать таким образом.

ТелоЗапроса = Ответ.ПолучитьТелоКакСтроку() ;
ЧтениеJson = Новый ЧтениеJSON();
ЧтениеJson.УстановитьСтроку(ТелоЗапроса);
СтруктураДАнных = ПрочитатьJSON(ЧтениеJson);


Ошибка: бла-бла-бла ....
СтруктураДАнных = ПрочитатьJSON(ЧтениеJson);
по причине:
Недопустимое состояние потока записи JSON
8 JastAMan
 
13.07.16
07:26
Вот и подумал - неужели только перебирать циклом?
9 DrZombi
 
гуру
13.07.16
07:27
(7) http://v8.1c.ru/o7/201410json/index.htm

Вы думайте дальше, не останавливайтесь :)
10 DrZombi
 
гуру
13.07.16
07:27
(8) Думай усердней
11 DrZombi
 
гуру
13.07.16
07:29
Можешь по старинке работать.

https://helpf.pro/faq83/view/1664.html
12 JastAMan
 
13.07.16
07:37
о.к. благодарю за то, что отозвались.
13 DrZombi
 
гуру
13.07.16
07:37
+ Если вы в качестве текста Джейсон не передали вида

{
    "СвойствоТипаМассив": [
        "Значение строка",
        1.2345E1,
        true,
        {
            "СвойствоТипаСтрока": "Значение строка",
            "СвойствоТипаНеопределено": null
        }
    ]
}

То что вы собственно хотите? :)
14 DrZombi
 
гуру
13.07.16
07:38
15 JastAMan
 
13.07.16
08:23
(13) Передал то, о чем Вы написали
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс