通常,当我想到URL中的参数时,我会想到查询字符串。但是,从技术上讲,在路径段中指定参数也是合法的。因此,给定的URL如下所示:
http://www.a.com/frisbee/brand
改写以下代码是合法的:
http://www.a.com/frisbee;color=red;size=small/brand;test=1
在实践中,我从未见过这种情况。哪些框架(如果有的话)会使用它?
我最近在使用ASP.NET MVC3,我不确定它是否能提取这些类型的参数。
发布于 2013-10-17 06:10:28
许多现代框架将在其URL解析系统中支持将变量指定为路径段的一部分。
Symfony (PHP)和Django (Python)都支持这一点,因为它们支持通过正则表达式从URL中提取值。
一个重要的区别是,查询字符串中指定的参数通常可以是任意顺序的,因为它们通常会被解析成类似字典的结构。这不适用于路径段中的参数。当然,您也可以自己将它们解析到字典中,但我刚才提到的框架不能帮助您做到这一点。
请注意,从技术上讲,HTTP URI中参数的顺序很重要,即参数(在路径中或在查询字符串中)的顺序不同的两个URL的一致性比较必须假设它们可以引用不同的资源。
https://stackoverflow.com/questions/6765627
复制相似问题