web-dev-qa-db-ja.com

クエリパラメータとマトリックスパラメータを使用する場合

クエリパラメータhttp://example.com/apples?order=random&color=blue

行列パラメーターhttp://example.com/apples;order=random;color=blue

  1. クエリパラメータとマトリックスパラメータのどちらを使用する必要があるか
  2. URLの途中でマトリックスパラメータを使用できるのに、クエリパラメータは使用できないのはなぜですか?例えば: http://example.com/apples;order=random;color=blue/2006/archive
  3. マトリックスパラメーターがクエリパラメーターのスーパーセットである場合、常に使用するのはなぜですか?

マトリックスパラメータの詳細については、こちらをご覧ください。 http://www.w3.org/DesignIssues/MatrixURIs.html

90
Gili

マトリックスパラメーターとクエリパラメーターの違いは、単なる慣習ではありません。

主な違いは次のとおりです。

  • クエリパラメータを持つURLの応答は、仲介者/プロキシによってキャッシュされません(現在)
  • 行列パラメーターはパスのどこにでも表示できます
  • 相対URIの計算は異なります
  • クエリパラメータは通常、リソースで既存のメソッドを使用する代わりに、新しい動詞を追加するために悪用されます
  • マトリックスパラメーターはリソースではなく、階層内で表現するのが困難な情報スペースのリソースを参照するのに役立つ側面です
  • Query vs. Matrix Parameters に詳細と参考文献を記載しました。

    110
    bdargan