問題タブ [ajv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
881 参照

json - AJV を使用した JSON 検証

次のJSON検証があります

上記の検証文字列を使用して、次の JSON 文字列を検証しようとしました。

ここで、「data.profession は oneOf 内の 1 つのスキーマと正確に一致する必要があります」というメッセージが表示されますが、データ内に正しいインスタンス変数などを含むインスタンスを 1 つだけ提供します。ここで私が間違っていることを教えてください。ちなみに、私はAJVバリデーターを使用しています。

ありがとうございました。

0 投票する
1 に答える
9762 参照

arrays - ajvで文字列の空の配列を検証する方法は?

ajvでjsonバリデーションをしています。文字列の配列を検証する必要があります。そこに配置できる要素はわかっているので、適切な「列挙型」を作成します。ただし、場合によっては、列挙型が空で、配列も空になることがあります。ここに簡単なテストがあります:

その結果、次のようになります。

架空の文字列を列挙型配列に追加できますが、このケースを合法的な方法で検証することは可能ですか? 「minItems=0」制限を追加しても役に立ちません。

空の列挙型を使用できないのは本当に json スキーマ ドラフトの制限ですか?

UPD:一般的なケースでコードを検証することを期待しています:

特別な場合にコードを検証することを期待しています:

0 投票する
1 に答える
623 参照

javascript - Dojo の使用時に外部ライブラリ (AJV) が認識されない

別の json スキーマ バリデーター ( AJV )を使用しようとしていますが、提供されているサンプル コードは、このような単純な Java スクリプトを使用すると JSFiddle で正常に動作します。

AJV テスト - ライブラリのない JSFiddle (純粋な JavaScript)

しかし、上記とまったく同じコードを Dojo と組み合わせて使用​​しようとすると、

AJV テスト - Dojo 1.10.4 を使用した JSFiddle

このエラーが発生します

fiddle.jshell.net/pbq2yjxy/18/show/:50 Uncaught ReferenceError: Ajv が定義されていません

AJV ライブラリーを Dojo で使用するにはどうすればよいですか?

0 投票する
1 に答える
2451 参照

javascript - 文字列型または null 型の JSON スキーマ プロパティを作成する方法

私のスキーマは次のようになります。

文字列または null を設定できるようにしたいのですが、どうすればよいですか?

0 投票する
1 に答える
3694 参照

node.js - コンパイル中にAjvが参照を解決できないのはなぜですか?

以下は、検証のためにコンパイルして使用しようとしている JSON スキーマの例です。これを達成するために、'ajv' npm モジュールを使用しています。

これが私が実行しているコードです...

このコードを実行すると、次の例外が発生します..

他の誰かがこの種の問題に遭遇しましたか? 私が間違っているかもしれないことは何ですか?

0 投票する
1 に答える
199 参照

jsonschema - あるオブジェクトのキーは別のオブジェクトのキーと同じでなければならない

初期設定

構成を保持するための JavaScript オブジェクトがあり、プラグインによって拡張される場合があります。各プラグインには、configs オブジェクトのバージョンと 1 つのプロパティがあります。

質問

CONFIGS.pluginsの各キーがオブジェクトのルートに対応するプロパティを持っているCONFIGSこと、およびその逆であることを JSON スキーマで表現する方法。

私の失敗した試み

ajv は 4.8.2 で、「有効!」と表示されます。ただし、 「無効」である必要があります

0 投票する
1 に答える
3269 参照

json - エラー: ID # からの参照 error.json を解決できません

他のスキーマへの正しい参照方法がわかりません。私はajvを使用し、次の2つのスキーマがあります

最初のスキーマが正しくない-email.json:

2 番目のスキーマ error.json:

テストを実行した後、このエラーが発生します

エラー: ID からの参照 error.json を解決できません # 私の検証方法:

リモートサーバーなどではなく、ローカルスキーマerror.jsonへの参照が必要です。このスキーマにIDを追加できる場所と、ajvで正しく解析するための$refを教えてください

0 投票する
2 に答える
536 参照

javascript - 疎行列データ オブジェクトを検証するには、より良い JSON スキーマが必要です

JavaScript で複雑なオブジェクトを検証する必要があります。

オブジェクトは辞書に基づいています:

ペアのオブジェクト ストア マトリックス (通常は完全ではない):

AJVバリデーターでバリデーションスキーマを作っています。

スキーマ要件:

  1. 第 1 レベルのオブジェクトには、ディクショナリのプロパティのみが含まれます。
  2. 第 2 レベルのオブジェクトには、ディクショナリのプロパティのみが含まれます。
  3. データは文字列です

スキーマの生成:

このスキーマはうまく機能していますが、問題はパフォーマンスです。ディクショナリに 200 個の要素が含まれている場合、このスキーマをコンパイルするには 10 秒かかります (検証は高速ですが、コンパイルは低速です)。さらに、メモリ不足の例外が時々スローされます。より良い検証スキーマを作成することは可能ですか?