何时使用查询参数与矩阵参数?

时间:2008-12-31 00:55:22

标签: uri query-parameters

查询参数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. 如果矩阵参数是查询参数的超集,为什么不一直使用它们?
  4. 您可以在此处详细了解矩阵参数:http://www.w3.org/DesignIssues/MatrixURIs.html

1 个答案:

答案 0 :(得分:110)

Matrix参数和查询参数之间的差异不仅仅是惯例。

主要区别是:

  • 查询参数的网址不会被中介/代理人缓存(目前)
  • 矩阵参数可能出现在路径中的任何位置
  • 计算相对uri是不同的
  • 查询参数通常被滥用来添加新动词而不是使用资源上的现有方法
  • 矩阵参数不是资源,它们是帮助引用难以在层次结构中表示的信息空间中的资源的方面
  • 我已经更详细地写了更多参考资料 Query vs. Matrix Parameters