commonjs-utilsのnode.js + json-schema.jsを使用してJSON APIを検証しようとしています。単一の検証は簡単でしたが、複数のスキーマファイルを管理して互いを参照できるようにする方法を見つけることができませんでした。複数のJSONスキーマファイルを管理するにはどうすればよいですか?
2つのモデル& 2つのAPIがあるとします。
// book
{
"type": "object",
"properties": {
"title": { "type": "string" },
"author": { "type": "string" }
}
}
// author
{
"type": "object",
"properties": {
"first_name": { "type": "string" },
"last_name": { "type": "string" }
}
}
// authors API
{
"type": "array",
"items": { "$ref": "author" }
}
// books API: list of books written by same author
{
"type": "object",
"properties": {
"author": { "$ref": "author" }
"books": { "type": "array", "items": { "$ref": "book" } }
}
}
各スキーマを別々のファイルに分割してオンラインにする必要がありますか?または、以下のような単一のスキーマファイルに結合できますか?可能であれば、どうすればローカルスキーマを参照できますか?
JSONスキーマで// single schema file {
"book": { ... },
"author": { ... },
"authors": { ... },
"books": { ... } }
node.jsに分離されたスキーマファイルでオブジェクトを作成する方法はありますか? – uzay95
@ uzay95スキーマはクラスではありません。スキーマはオブジェクトの構造を定義し、検証するために使用され、クラスは初期化後のオブジェクトの構造を定義します。 jsでクラスが必要な場合は、Typescript、AtScript、またはES6を調べてみてください。あるいは、node.jsにインクルードする外部ファイル内にモジュールまたはコンストラクタファクトリメソッドを置くだけです。 –