|
"Непредвиденный символ при чтении json" |
☑ |
0
denis_z3x
30.07.19
✎
09:39
|
Здравствуйте!
Я в 1С дилетант!
Отправляю на web-сервер данные. Получаю ответ если все ок. то сервер возвращает json и 1с прекрасно его разбирает. А если произошла ошибка, то ответ уже не в формате json.
Если ответ не json тогда 1с выводит ошибку "Непредвиденный символ при чтении json"
Как можно проверить является ли строка json на стороне 1с?
.....
Ответ = Соединение.ОтправитьДляОбработки(HTTPЗапрос); // Получаем ответ с сервера
//Сообщить(Ответ.ПолучитьТелоКакСтроку("UTF-8"));
тЧтение = Новый ЧтениеJSON;
тЧтение.УстановитьСтроку(СокрЛП(Ответ.ПолучитьТелоКакСтроку("UTF-8"))); // читаем строку
ДанныеJSON = ПрочитатьJSON(тЧтение,Истина);
тЧтение.Закрыть();
....
|
|
1
Кирпич
30.07.19
✎
09:46
|
попытка исключение
|
|
2
Кирпич
30.07.19
✎
09:48
|
ну и наверное статус http
|
|
3
zva
30.07.19
✎
09:50
|
Если Ответ.КодСостояния = 200 Тогда
Если СтрНайти(Ответ.Заголовки.Получить("Content-Type"), "json") > 0 Тогда
|
|
4
ДенисЧ
30.07.19
✎
10:32
|
(3) Ой, не факт... Я могу заголовок вставить, а в тело свап-файл запихнуть...
|
|
5
denis_z3x
30.07.19
✎
10:52
|
Спасибо за варианты. Я вышел пока таким вариантом
Если Сред(строкаJSON, 1, 1) = "{" Тогда
// читаем строку как JSON
Иначе
// Выводим строку через сообщение, что бы узнать в чем проблема
КонецЕсли;
|
|