Я новичок в схемах Javascript и JSON, и у меня есть вопрос, как заставить его работать ... Я создал схему, у меня есть валидатор схемы JSON здесь и объект JSON. Мне сказали написать функцию Javascript, которая принимает схему JSON и некоторое количество JSON, а затем возвращает, прошла ли проверка успешно или нет (и если нет, то какой ключ был проблематичным).
Дело в том, что я не знаю, смогу ли я проверить это на HTML с помощью консоли (просто вызвав файл .js со схемой, объектом и функцией JSON), если мне придется использовать node.js для задач этого типа с JSON или ... До сих пор я установил lib и создал HTML-код для его "тестирования"; но ошибки на консоли не соответствуют недопустимой схеме или чему-то еще. Может ли кто-нибудь дать мне некоторую ориентацию? Спасибо!
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript" src="schema.js"></script>
</body>
</html>
3 ответа
Чтобы выполнить несколько быстрых тестов, путь наименьшего сопротивления будет: а) запустить его в веб-консоли (например, открыть инструменты разработчика в Chrome) или б) создать файл (скажем, «test.js») и запустить {{ X0}} в вашей командной строке:
var testSchema = {
name: {
type: 'string'
},
age: {
type: 'number'
}
};
var testData = {
name: 'john',
age: 47
};
function checkAgainstSchema(data, schema) {
return Object.keys(data).every(function(key) {
return typeof testData[key] === schema[key].type;
});
}
checkAgainstSchema(testData, testSchema); // => true
Трудно дать больше информации, чем ограниченный объем информации, который вы указали в своем вопросе. Возможно, вышеизложенное даст вам кое-что для начала.
К вашему сведению, вышеприведенное не является надежной реализацией того, что вы просите, а просто простой пример того, что вы просите.
Вы также можете использовать tonicdev.com, чтобы поиграть с использованным вами ajv (или любым другим пакетом npm).
Существует модуль для анализа и проверки данных JSON по схемам JSON: tv4. Если вы используете node.js, он доступен через
npm install tv4
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.