11

ほとんどのコードが JavaScript で記述されたアプリケーションがあります。私は奇妙な問題に遭遇しています。クエリ文字列があり、アプリがそれを読み取ってさまざまなアクションを実行します。昨日、クエリ文字列パラメーターの順序を変更したところ、アプリケーションが動作しなくなりました。元の注文に戻すと、機能し始めます。その理由は何ですか?パラメータの順序付けの影響は問題にすべきではないと考えました。しかし、どうやらそれは何らかの理由で問題があるようです。私はまだ何が問題なのかを掘り下げようとしていますが、ここで誰かが同様の問題に遭遇したかどうか知りたいですか?

ありがとう。

4

3 に答える 3

22

適切に作成されたアプリケーションは、指定されたクエリ パラメータを任意の順序で検索し、順序に依存しません。ただし、特定のパラメーターを最初、最後、または他のパラメーターの後にある場合にのみ見つける、不適切に記述された解析コードを使用することは可能です。クエリ パラメーターを解析するコードを見ないと、どのような問題があるかはわかりませんが、位置に依存する不適切なコードが記述されている可能性があります。

クエリ パラメータを解析するコードと、機能するクエリ文字列と機能しないクエリ文字列を投稿すると、より具体的にアドバイスできます。また、クエリ パラメーターに、エンコードされているはずの文字が含まれていないことを確認する必要があります。

于 2012-04-04T05:53:35.673 に答える
1

問題になることはありません。他の何かがエラーを引き起こします。locationまたは、URL を含む変数に依存関係があります。

于 2012-04-04T05:23:42.287 に答える
1

私は、開発者がクエリ文字列をキャッシュされたオブジェクトのキーとしてそのまま使用したときに、そのような問題を見てきました。クエリ文字列が変更されたとき、キーが同じではなく、キャッシュ メカニズムが失敗していました (別のバグが原因で)。

于 2012-04-04T06:03:34.197 に答える