Конструктор Json Schema с функцией валидации JSON

Публикация № 1265429

Разработка - Обмен данными 1С

Json schema Обмен rest Http

Инструмент для создания Json-схем по формату 4 драфта. В современном мире модно пользоваться Http-сервисами и Json, но если для старого доброго xml все уже придумано и xsd схемы можно рисовать в 1С из коробки, то с json и его форматом Json schema все не так хорошо. Зачастую нужно стандартизировать формат сообщений обмена json и для этого можно воспользоваться Конструктором. Есть возможность проверить свой Json на соответствие схеме. Схемы после выгрузки проходят валидацию в Liquid studio 2020. Стандартизируйте обмен Json с комфортом и удобством.

Это первая версия конструктора схем json.

Реализован функционал управления типами, как составными, так и ссылочными через $ref:

Реализован функционал Добавления свойств и определений,

Функционал ограничения типов фасетами.

 

Можно загрузить и отредактировать схему из файла.

Или сделать с нуля.

В ближайших планах добавлять проверки схемы на излишнюю информацию,

Добавить генерацию тестового Json согласно схеме

Улучшать читабельность ответа валидатора

Реализовать валидатор на сервере.

 

 

Update 16.07.2020

- Добавлена валидация Json в тестовом режиме.

В результате проверки выдается сообщение с местонахождением ошибки.

 

В планах повысить читабельность ответа от валидатора. Перенести логику из клиента на сервер.

 

Оттестировано на 1С:Предприятие 8.3 (8.3.16.1030)

Управление холдингом, редакция 3.0 (3.0.8.11)

Скачать файлы

Наименование Файл Версия Размер
Конструктор Json Schema:

.epf 28,57Kb
15.07.20
6
.epf 0.9.7 28,57Kb 6 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. malikov_pro 401 16.07.20 09:09 Сейчас в теме
"проверку на соответствие произвольного JSON схеме" - полезная штука, жду реализации.
3. Segate 33 16.07.20 11:20 Сейчас в теме
(1) добавил первую версию валидатора
malikov_pro; +1 Ответить
2. Segate 33 16.07.20 11:20 Сейчас в теме
Господа, буду благодарен за найденые ошибки, баги и предложения
4. Rashid80 27 24.07.20 11:03 Сейчас в теме
А какую проблему решает этот валидатор? выгрузка данных упадет раньше обмена? Если JSON невалиден, ему дадут отбой на стороне сервера каким нибудь HTTP 4ххх или HTTP 5xxx. ну т.е. получим ошибку в пределах секунды.
Договариваться о формате или вообще API лучше и удобней его четким описанием , можно посмотреть как это делает Swagger

По мне? так JSON тем удобней тем, что он schemaless - можно добавить часть полей (под новый формат), который приемник еще не знает, но потом научится вычитывать. Валидатор по схеме прибьет такое начинание
5. Segate 33 24.07.20 14:04 Сейчас в теме
(4)Четкое описание API - и есть схема
собственно для этого это и надо.
Валидация нужна, например, при получении данных от клиента. чтобы выдать ему корректный HTTP код ошибки. Зачастую ты не обрабатываешь сообщение сразу, а пихаешь его в стек и оно там валяется до его обработки.
Валидация нужна на клиенте перед отправкой, зачем дергать сервер, если мы заранее знаем, что данные не корректны?
Валидация нужна, когда у тебя распределенная разработка и тебе нужно провести тесты интеграции, а доступа к серверам нет.

Если ты посмотришь внимательно на JSON schema то ты увидишь такие замечательные вещи как additionalproperties например, этими механизмами поддерживается возможность добавлять(или не добавлять) доп. поля и тд
Оставьте свое сообщение

См. также

daСклонение: склонение ФИО, должностей, чисел, прилагательных, существительных на языке 1С + ТестЦентр Промо

Универсальные функции v8 1cv8.cf Абонемент ($m)

Функция предназначена для склонения выражений, которые часто требуется при формировании печатных форм договоров и прочих печатных форм. Функция склоняет по падежам ФИО, должности, числительные, валюты, единицы измерения, предметы. Также функция склоняет глаголы и прилагательные по числам и родам и существительные по числам. Имеется режим определения рода переданного выражения. Поддержка форматной строки для вывода результата. Функция не использует внешние библиотеки и веб-сервисы, написана на чистом языке 1С, и поэтому легко встраивается в любую конфигурацию или внешнюю обработку. Правила склонения оформлены в виде таблицы и могут быть легко изменены при необходимости.

1 стартмани

14.02.2015    101851    97    daMaster    90    

Сравнение реального дохода со средним доходом из API.HH.RU

Зарплата Управленческие v8 v8::СПР ЗУП3.x УУ Абонемент ($m)

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с HH.RU используя HH REST API. Ключевые функции: получение списка вакансий по должностям (Ключ для работы не нужен); расчет среднего дохода; Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.13.1513) Зарплата и управление персоналом, редакция 3.1 (3.1.11.68) совместно с API.HH.RU.

1 стартмани

11.11.2019    3921    4    solaru    2    

Конфигурация для рекламного агентства

Управление услугами и сервисом Управление взаимоотношениями с клиентами (СRM) Производство готовой продукции (работ, услуг) Управление взаимоотношениями с клиентами (СRM) Производство готовой продукции (работ, услуг) v8 Реклама, PR и маркетинг УУ Абонемент ($m)

Данная конфигурация выполнена для решения тестового задания: Цель задания: 1) Понять, на каком из клиентов сколько мы заработали;  2) Понять, по какому виду СМИ сколько мы заработали;  3) Проследить по каждой услуге: у кого за сколько купили и кому за сколько продали, с возможностью перейти в соответствующий документ. Реализовано с помощью: 1. Справочники - контрагенты, номенклатура 2. Документы - Поступление услуг, реализация услуг 3. Отчеты - отчет по контрагентам, номенклатуре и движений.

1 стартмани

21.05.2019    4550    0    solaru    0    

Загрузка номенклатуры в УТ 10.3 из Excel файла с генерацией штрихкодов

Загрузка и выгрузка в Excel Обработка справочников Оптовая торговля Розничная торговля Учет ТМЦ Оптовая торговля Розничная торговля Учет ТМЦ v8 УТ10 Россия Абонемент ($m)

Обработка позволяет генерировать новые номенклатурные позиции на основе данных из файла Excel с последующей генерацией штрихкодов (ШК). Может быть полезна при больших поступлениях товаров на склад, где ручное создание и присваивание штрихкода  (ШК) может занимать много времени.

1 стартмани

24.03.2017    7801    7    solaru    0    

Под капотом управляемых форм

Практика программирования v8 1cv8.cf Бесплатно (free)

Управляемые формы уже давно и плотно вошли в жизнь 1С-разработчика. Однако, судя по недавним публикациям на Инфостарте, многие до сих пор мало знакомы с ними. Предлагаю разобраться с тем, что же это такое.

26.08.2013    265167    Evil Beaver    266    

[NotaBene] Универсальный отчет по таблице значений

Практика программирования v7.7 1cv7.md Россия Абонемент ($m)

1C v.7.7 Готовое решение. Не требует настройки. Не требует допрограммирования. Данная обработка решает часто встречающуюся задачу вывода в "красивом" виде таблицы значений (полученной, например, из запроса). Поддерживается произвольное группирование данных, отключение/включение группировок, в т.ч и создание "шахматок" (типа "продажи понедельно"). Обработка может использоваться как и в отладочных целях (для нормального просмотра ТЗ), так и в составе вполне рабочих отчетов. По крайней мере, я неоднократно клиентам данную обработку ставил вместо того, чтобы каждый раз писать замороченные выводы данных. И клиенты довольны, и мне - проще...

2 стартмани

07.05.2007    28733    3    CheBurator    63