問題タブ [validation]
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.
java - 注釈ベースの Spring Bean 検証
私は、Springモジュールを使用して Spring Bean を検証するための注釈ベースのアプローチを調査しています。このチュートリアルでは、次の Bean (ゲッターとセッターは省略) を例として使用します。
特定の検証規則に従わない場合に使用されるエラー メッセージは、次の形式に従う必要があります。
上記のクラスの例は次のとおりです。
メッセージ キーにクラス名が含まれているという事実には、いくつかの問題があります。
- クラスの名前が変更された場合、メッセージ キーも変更する必要があります。
User.email と同じように検証される電子メール プロパティを持つ別のクラス (Person など) がある場合、メッセージを複製する必要があります。
Person.email[not.blank]=メールアドレスを入力してください。
Person.email[email]=有効な電子メール アドレスを入力してください。
Person.email[length]={2} 文字以内で入力してください。
実際、ドキュメントでは、次のように特定のルール (@Email など) のデフォルト メッセージを構成できると主張しています。
このデフォルト メッセージは、ルールの Bean 固有のメッセージが見つからない場合に使用する必要があります。ただし、私の経験では、これは単に機能しません。
メッセージの重複を回避する別のメカニズムは、エラー メッセージのキーをルール アノテーションに渡すことです。たとえば、@Email ルールに対して次のデフォルト エラー メッセージを定義したとします。
このメッセージは、関連するプロパティに次のように注釈を付ける場合に使用する必要があります。
しかし、私はこれを何度も試しましたが、うまくいかないようです。この検証フレームワークを使用するときに、エラー メッセージの重複を避ける方法を見つけた人はいますか?
javascript - javascript を使用して子を必要とする要素を埋める場合、Valid XHTML 1.0 Strict コードをどのように記述しますか?
XHTML 1.0 Strict として検証するように W3C の検証ツールを使用してサイトを実行していますが、(少なくとも私の経験では) 特に厄介な検証エラーが発生しました。外部サイトに含めるための独自の API とコードを提供するさまざまなサービスの特定のバッジをサイトに含めています。これらのバッジは、(ほとんどの場合) javascript を使用して、子を必要とするマークアップに挿入する要素を埋めます。これは、最終的には完全に有効なマークアップが生成されることを意味しますが、バリデーターには、不完全な親子タグしか表示されず、エラーがスローされます。
注意点として、バッジが検証されていないサービスに不平を言うことができることを理解しています. これがなければ、誰かがこのようなバッジを含めながらコードを検証したと思います。それが私が興味を持っていることです。「バッジについて Flickr に苦情を言う」などの回答はあまり役に立ちません。
追加の警告: マークアップは可能な限りセマンティックのままにすることをお勧めします。IE 有効にするために空の li タグまたは tr-td ペアを追加することは、必要かもしれませんが、望ましくない解決策です。それが検証する唯一の方法である場合は、まあ、セマンティックマークアップに答えてください。
例として:
JavaScript をラップする ul タグに注目してください。これは最終的にスクリプトを介して lis で埋められますが、バリデータには未入力の ul しか見えません。
前もって感謝します!
javascript - ASP.NETMVCクライアント側の検証
私はASP.NETMVCを使用することに専念していますが、改善されることを期待している領域の1つは、クライアント側の検証です。
最新バージョン(プレビュー5)には検証用の新機能がたくさんあることは知っていますが、それらはすべてページが投稿された後のようです。
スティーブ・サンダーソンによる興味深い記事を見ました... Live Validation、Castle.Components.Validator.dll、および彼が作成したValidatorフレームワークを使用しています。
私は自分のプロジェクトでそれを使用しましたが、そのようなものが公式のASP.NETMVCリリースに統合されることを望んでいます。私は間違いなく、ビジネスルールはビューではなくモデルまたはコントローラーのいずれかに存在する必要があると思います。
同様のアプローチを使用した人はいますか?
このようなものが公式のASP.NETMVCリリースに追加されていることをご存知ですか?
nhibernate - 検証ブロックと Nhibernate.Validator の比較
私は検証フレームワークを探しています。すでにNHibernateを使用していますが、contribプロジェクトのNHibernate.validatorを使用することを考えていますが、堅牢なMS Validation Blockも検討していますが、それぞれの詳細にはまだ触れていません。この 2 つのフレームワークに足を踏み入れた人はいますか? その経験はどのようなものですか?
java - XML スキーマに対する検証には何を使用しますか?
サーバー側 Java のスキーマに対して XML ドキュメントを検証する場合、組み込みの JRE Xerces 実装と javax.xml.validation.Schema を使用します。正常に動作しますが、検証が失敗すると、Xerces はほとんど役に立たないエラー メッセージを表示します。次に例を示します。
これらは、検証に失敗した XML ドキュメントの特定の部分を診断して追跡するのに時間がかかる場合があります。これはすべて、不十分なエラー メッセージが原因です。
私の質問は、スキーマに対して XML を検証する別の手段を使用していますか?
これはサーバー側 Java であるため、「XML Spy を使用する」などとは言わないでください。
regex - メールアドレスの正規表現認識は難しい?
私は最近、標準のすべてのバリエーションと可能性を考慮して、電子メールアドレスに一致する正規表現を書くことは非常に難しく、最初に想定するよりもはるかに複雑であるとどこかで読みました。
何故ですか?
実際にこれを完全に行う既知の証明された正規表現はありますか?
電子メール アドレスの照合に正規表現を使用する代わりに、どのような方法がありますか?
javascript - 郵便番号(米国の郵便番号)の検証
人々が一緒に小さなコードプロジェクトに取り組んでいると思いましたが、私はそれらを見ていないので、ここに簡単なものがあります:
有効な米国の郵便番号を検証するコード。そこに郵便番号データベースがあることは知っていますが、Webページ、迅速な検証、および郵便番号が発行され続けるという事実などの用途はまだあるので、弱い検証を使用することをお勧めします。
ウィキ/ブログのサイドプロジェクトで郵便番号について少し書きました。
https://benc.fogbugz.com/default.asp?W24
新しい、奇妙なタイプの郵便番号もあります。
https://benc.fogbugz.com/default.asp?W42
javascriptコードを実行することはできますが、ここで取得できる言語の数を確認するのは興味深いことです。
javascript - JavaScript: クライアント側とサーバー側の検証
クライアント側とサーバー側のどちらの検証を行うのが良いですか?
私たちの状況では、使用しています
- jQuery と MVC。
- ビューとコントローラーの間で渡す JSON データ。
私が行う検証の多くは、ユーザーが入力したデータを検証することです。たとえば、keypress
イベントを使用して、テキスト ボックス内の文字を防止し、最大文字数を設定し、数字が範囲内にあるようにします。
クライアント側よりもサーバー側の検証を行う利点はありますか?
素晴らしい答えはみんなです。私たちが持っているウェブサイトはパスワードで保護されており、小規模なユーザー ベース (<50) 向けです。JavaScript を実行していない場合は、忍者を送信します。しかし、万人向けのサイトを設計するのであれば、両側で検証を行うことに同意します。
regex - 英国の郵便番号に一致する正規表現
入力文字列内でのみ完全な複雑な英国の郵便番号を検証する正規表現を求めています。一般的でない郵便番号フォームはすべて、通常のものと同様にカバーする必要があります。例えば:
マッチ
- CW3 9SS
- SE5 0EG
- SE50EG
- se5 0eg
- WC2H 7LT
歯が立たない
- aWC2H 7LT
- WC2H 7LTa
- WC2H
この問題を解決するにはどうすればよいですか?
validation - HTTP レスポンス分割
このエクスプロイトの可能性を処理しようとしていますが、最善の方法は何でしょうか? apache の common-validator を使用して、既知の許可されたシンボルのリストを作成し、それを使用する必要がありますか?