ホームページ > バックエンド開発 > Golang > 2 つの可能な名前を使用して入力フィールドを検証する

2 つの可能な名前を使用して入力フィールドを検証する

王林
リリース: 2024-02-08 22:33:08
転載
1023 人が閲覧しました

2 つの可能な名前を使用して入力フィールドを検証する

php Xiaobian Strawberry では、入力フィールドを検証する方法を紹介します。検証には 2 つの可能な名前を使用します。入力フィールドの検証は、Web サイトまたはアプリケーションを開発する際の非常に重要なステップです。 2 つの可能な名前を使用することで、入力フィールドのセキュリティと正確性を高めることができます。このメソッドは、入力フィールドの実際の名前を代替名と比較することによって検証します。両方の名前が一致する場合、入力フィールドは有効であるとみなされます。この検証方法は、ユーザーの入力エラーや悪意のある入力によって引き起こされる問題を回避し、より信頼性の高いデータ保護を提供します。

質問内容

元々 Python で書かれた API を移行しています。 Python API を使用すると、次のようにリクエストをキャメルケースまたはスネークケースとして送信できます。

これは許可されています

リーリー

これは許可されています

リーリー

これは、優れた Python ライブラリ Pydantic を使用して行われます。 リーリー

これにより、エイリアス (someInput) またはフィールド名 (some_input) による入力モデルの作成が可能になります。 Goでも同じか同等のことをしたいと思っています。ジンを使用しています:

リーリー

私の入力構造は次のようになります:

リーリー

私の入力が次の場合、これは機能しません:

リーリー

返される内容:

リーリー

キャメルケースとスネークケースの両方を受け入れるにはどうすればよいですか?

回避策

Go では、1 つの構造体フィールドに 2 つの JSON タグを同時に指定することはできません。 JSON タグは、フィールドをマーシャリング (JSON にシリアル化) する方法、またはアンマーシャリング (JSON から逆シリアル化) する方法を定義する単一の文字列を使用して指定します。構造体の 1 つのフィールドに複数のラベルを直接指定することはできません。

JSON 出力で CamelCase と SnakeCase をサポートする必要がある場合は、通常、構造フィールドに一貫した命名規則を選択し、すべてのフィールドに適切な JSON マークアップを使用する必要があります。

これを行う賢い方法があります。これがお役に立てば幸いです。

リーリー

以上が2 つの可能な名前を使用して入力フィールドを検証するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート