私のチームは、すべての入力と出力に対してデータを検証するためにJSONスキーマを使用するAPIを構築しています。プロジェクトは成長していて、私はすでに85個のJSONファイルがあり、私は、各ファイルに対して非常に多くのリファクタがあることも検出します。たとえば、重複したコードが多数抽出され、単一のスキーマとして配置され、各ファイルのこのスキーマを参照する必要があります。そこで私はこのディレクトリをスキャンしてこの種のエラーを検出するのに役立つライブラリと他のエラーを検出するのに役立つJSONスキーマリンターを助けるライブラリをgoogleにしようとしましたが、何も見つかりませんでした。だから私は誰かが同じ問題を抱えているかどうかを知るためにこの質問を投稿し、それを解決するツールを見つけました。jsonスキーマディレクトリのLinter
1
A
答えて
1
私が今作業しているプロジェクトでは、tv4を使用してJSONスキーマファイルを検証しますが、それは 'linting'自体ではありませんが、探しているものでなければなりません。
1
私はこれまでにこのライブラリを使ったことがありませんでしたが、あなたができることの例があります。ライブラリそのものは重要な部分ではありません。
http://json-schema.org/draft-04/schemaをダウンロードし、draft04-metaschema.json
(またはあなたのスキーマに使用しているメタスキーマ)に保存します。 NPMからajv-cliを使用します。
npm install -g ajv-cli
ajv validate -s draft04-metaschema.json -d your-schema.json
これは、それが有効だと確認するために指定されたメタスキーマに対するあなたのスキーマを検証します。この同じ方法論を使用して、他の任意のライブラリを使用してスキーマを検証できます。うまくいけばそれはあなたを始めさせるのに十分です。
関連する問題
- 1. VSCode Linter ES6 ES7 Babel linter
- 2. プルリクエスト "linter"
- 3. 503レスポンスFacebook Linter
- 4. Microsoft VSコードとHTML linterの角2タグ
- 5. linter-ruby atomが動作しない
- 6. Ruby 1.9を使用するためのSubLime Linterプラグインの設定
- 7. 次のノードのjs linterは必要です
- 8. 文書のlinterエラーno-undefを解決する
- 9. AtomのJavaでLinterが動作しない
- 10. Sublime Linterのポップアップ警告を削除するには?
- 11. factory_girl linterがActionView :: Template :: Errorのために失敗しました
- 12. FacebookのIP範囲を許可する(Linter/Socialプラグイン)
- 13. Linterはサイトに接続できません。
- 14. アトムパッケージlinter-flake8が出力を表示しない
- 15. Facebook Linterがog:tagsを手に入れました。
- 16. Flake8-linter Atom除外ファイルが含まれています
- 17. Facebook Linter/Open GraphはURLパスを切り捨てます
- 18. GoogleクローズLinterがWindows用のサブライムテキスト2で動作していない
- 19. グランツ経由でGoogle JavaScript Linterを実行するのが失敗するのはなぜですか?
- 20. なぜこのエラーが発生しますか?line 0 col 0不良オプション:gulp linterタスクの実行後に '0' .`?
- 21. 他の開いているグラフog:タイプがFacebookによって正しく解析されていないlinter
- 22. jQueryのJSON-内-JSON
- 23. PhpStorm with JSHint linterは、宣言されていないクラスについて警告します
- 24. Facebook Linterが会社として定義されているときにog:typeをウェブページとして表示する
- 25. React-Native iosにフォントを追加し、再起動後に失われます+ Apple match-0 linter
- 26. og:リンクを共有するとイメージは無視されますが、linterに受け入れられます
- 27. JSON-LDと通常のJSON
- 28. JSON投稿時のエラーJSON
- 29. jsonデータテーブル内のjson応答
- 30. Sychronous JsonとAsychonrous Jsonのリターン
私はtv4のドキュメントを読んでいますが、JSONスキーマに対してデータを検証するためのライブラリです。perse –
スキーマの '$ schema'プロパティで定義されたメタスキーマに対してスキーマを検証します。他のいくつかのライブラリは、スキーマを検証できるように、APIの中にこれを直接組み込んでいますが、その下にはスキーマがあります。 –