Генератор образцов данных из JSON Schema
Вставьте JSON Schema и сгенерируйте соответствующий образец JSON в вашем браузере. Ваша схема остаётся на вашем устройстве.
Ваша JSON Schema разбирается и превращается в образцы данных локально в вашем браузере и никогда не загружается, но избегайте встраивания реальных секретов или рабочих значений в схему, которую вы вставляете.
Есть JSON, но нужна схема? Попробуйте генератор JSON Schema.
Об инструменте Данные из JSON Schema
Этот генератор образцов данных из JSON Schema превращает схему в реалистичный образец JSON, который действительно ей соответствует. Вставьте схему draft-07, 2019-09 или 2020-12, и он построит данные, уважающие ваши типы, строковые форматы вроде email, date, uri и uuid, варианты enum, обязательные свойства, границы minimum и maximum, а также комбинаторы вроде allOf, anyOf и oneOf. Выберите, сколько образцов производить, и они оборачиваются в массив, либо сгенерируйте один объект. Включите реалистичные значения, чтобы заполнять строковые форматы жизненными именами, email и датами вместо простых заполнителей. Используйте его, чтобы наполнить базу данных, замокать ответ API или собрать фикстуры для тестов без ручного написания примеров нагрузки. Вставленная схема обрабатывается полностью в вашем браузере и никогда не покидает ваше устройство.
Возможности
- Читает документы JSON Schema draft-07, 2019-09 и 2020-12
- Уважает типы, обязательные свойства и числовые границы minimum/maximum
- Заполняет строковые форматы вроде email, date-time, uri и uuid корректными значениями
- Уважает enum и const, чтобы сгенерированные значения оставались в допустимом наборе
- Разрешает комбинаторы, включая allOf, anyOf и oneOf, а также определения $ref
- Генерация одного объекта или многих образцов, обёрнутых в массив
- Опциональные реалистичные значения на основе жизненных имён, email и дат
- Копирование результата или скачивание его как sample-data.json в один клик
Как использовать Данные из JSON Schema
- Вставьте вашу JSON Schema в поле схемы или нажмите Load example.
- Задайте, сколько образцов вы хотите, и включите или выключите реалистичные значения.
- Прочитайте соответствующий образец JSON в панели вывода справа.
- Нажмите «Копировать», чтобы взять данные, или скачайте их как sample-data.json.
Пример
Ввод
{
"type": "object",
"required": ["id", "email", "role"],
"properties": {
"id": { "type": "integer", "minimum": 1 },
"email": { "type": "string", "format": "email" },
"role": { "enum": ["admin", "editor", "viewer"] }
}
}
Результат
{
"id": 254,
"email": "ada@example.com",
"role": "editor"
}
Ограничения integer, формата email и enum — все выполнены в сгенерированном объекте.
Частые ошибки и устранение неполадок
- Вывод сообщает, что схема не является корректным JSON. — Генератор ожидает объект JSON. Проверьте на замыкающие запятые, ключи без кавычек или одинарные кавычки и вставьте полную, правильно оформленную схему.
- Обязательное свойство отсутствует в сгенерированных данных. — Перечислите свойство в массиве required схемы и задайте ему тип; свойства без типа или появляющиеся только как необязательные могут быть пропущены.
- Строковый формат вроде email или uuid выходит как случайные символы. — Включите реалистичные значения, чтобы распознанные форматы заполнялись жизненными образцами вместо заполнителей на основе шаблонов.
- Ветвь anyOf или oneOf производит данные, которых вы не ожидали. — Генератор выбирает одну подходящую ветвь за прогон; ужесточите каждую ветвь собственными ключевыми словами required и type, чтобы каждый вариант оставался корректным.
Часто задаваемые вопросы
- Какие черновики JSON Schema поддерживаются?
- Он обрабатывает схемы draft-07, 2019-09 и 2020-12, охватывая типы, строковые форматы, enum, обязательные свойства, числовые границы и комбинаторы вроде allOf, anyOf и oneOf.
- Чем это отличается от валидации JSON Schema?
- Валидация проверяет, соответствуют ли существующие данные схеме. Этот инструмент работает в обратном направлении: он читает схему и генерирует новые образцы данных, соответствующие ей, чтобы вы могли наполнять тесты, моки или базу данных.
- Как сгенерировать массив из нескольких записей?
- Задайте количество Samples больше 1. Каждый образец генерируется из той же схемы, а результаты оборачиваются в массив JSON; количество 1 возвращает один объект вместо этого.
- Что делает переключатель реалистичных значений?
- При включении распознанные строковые форматы и поля заполняются жизненными именами, email, датами и URL. При выключении значения генерируются из собственных ограничений и шаблонов схемы.
- Всегда ли сгенерированные данные удовлетворяют схеме?
- Генератор уважает типы, форматы, enum, обязательные поля и числовые границы. Очень сложные правила not или условные if/then/else бывает трудно выполнить точно, поэтому валидируйте вывод по вашей схеме для критичных фикстур.
- Загружается ли моя схема куда-либо?
- Нет. Вставленная схема разбирается и генерируется полностью в вашем браузере, поэтому она обрабатывается локально на вашем устройстве и никогда не отправляется на сервер.
Связанные инструменты
Все инструменты ArrayKit