Выбор ответа Junior Обмены и интеграции обновлено
Чтение JSON с дефисами
Вопрос
Сервис присылает {"order-id": 15}. Почему код падает?
Чтение = Новый ЧтениеJSON;
Чтение.УстановитьСтроку(Текст);
Данные = ПрочитатьJSON(Чтение);
Чтение.Закрыть();
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Объект читается в Структуру, а ключ "order-id" для неё недопустим. Дефис нельзя использовать в имени ключа структуры.
Варианты ответа
- Объект читается в Структуру, а ключ "order-id" для неё недопустимправильный ответ
- ЧтениеJSON не умеет читать числа без кавычек, значение должно быть строкой
- Перед чтением нужно сначала вызвать Чтение.Закрыть()
- JSON с дефисами в ключах не соответствует стандарту RFC
Разбор
Дефис нельзя использовать в имени ключа структуры. С параметром Истина объект прочитается в Соответствие, и значение будет доступно как Данные["order-id"]. Числа читаются нормально, Закрыть вызывают после чтения, а ключи с дефисами в JSON допустимы.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.