perlでURLを検証するにはどうすればよいですか. つまり、クエリ文字列には特定の順序があり、すべてのパラメーターには特定の値 (int または string または operator (%2B(+) など)) があります。
例: www.mypage/question?name=john&age=21&operation=%2B
順序 (名前 -> 年齢 -> 操作) とそれらの特定の値を制御できますか?
ありがとう
perlでURLを検証するにはどうすればよいですか. つまり、クエリ文字列には特定の順序があり、すべてのパラメーターには特定の値 (int または string または operator (%2B(+) など)) があります。
例: www.mypage/question?name=john&age=21&operation=%2B
順序 (名前 -> 年齢 -> 操作) とそれらの特定の値を制御できますか?
ありがとう
はいといいえ。
いいえ、送信されたパラメーターの順序を制御することはできません。ブラウザーが別の順序で送信するか、ユーザーがブラウザーを使用してクエリを送信していない可能性があります。
はい、送信するパラメータの順序を制御できます。しかし、これに頼らないでください。
Data::Validate::URIを使用して URL を検証できます。
パラメータ値を制御するために複雑な正規表現を使用しないでください。パラメータが一致するか、一致しないかのいずれかです。パラメーター値が予期されるオプションの 1 つであるか、そうでないかのいずれかです。一致する場合は、何かを行います。一致しない場合は、何もしないでください。(または、404 を実行しますが、それはあなたに悪用される可能性があります。) 「このパラメーター値はすべて数値にする必要があります」よりも複雑なものを使用すると、問題が発生します。