サイトアイコン APPSWINGBY Developers Blog

バリデーションチェックについて調べる

ユーザーによる入力バリデーションチェックについて改めてまとめてみました。

バリデーションチェックの種類

バリデーションチェックには主に2種類あります。
クライアントサイドバリデーション
サーバーサイドバリデーション

クライアントサイドバリデーション

クライアントサイドバリデーションとは、ユーザーがformに入力したデータをサーバーに送信する前にブラウザなどで検証するプロセスのこと
利点:
・サーバーに無効なデータを処理する必要がないため、サーバーへの負荷が軽減される
・サーバーとの通信が行われないため、バリデーション結果がすぐに表示される
欠点:
・利用するユーザーによって無効化が可能であるため、セキュリティに問題がある
・ブラウザによっては正常に機能しない可能性がある

サーバーサイドバリデーション

サーバーサイドバリデーションとは、ユーザーがformに入力したデータをサーバー側で検証するプロセスのこと
利点:
・クライアント側のバリデーションを回避した無効なデータを防ぐことができる為、セキュリティが強化される
・複雑なバリデーションチェックを実装しやすい
欠点:
・クライアントサイドバリデーションよりも処理速度が遅いため、エラーを表示するまでに時間がかかる

クライアントサイドサーバーサイドどちらのバリデーションが良いのか

クライアントサイドバリデーションのみの実装ではセキュリティ面で脆弱なため、サーバーサイドバリデーションが必須なようです。ただ、クライアントサイドバリデーションの方がUX(ユーザーエクスペリエンス)が向上するため、クライアントサイドで実施したバリデーションをサーバーサイドでも行うといった実装が理想だと感じました。

モバイルバージョンを終了