asp.net-mvc-3 - URL 路径参数用例

标签 asp.net-mvc-3 http url parameters uri

通常,当我想到 URL 中的参数时,我会想到查询字符串。然而,从技术上讲,在路径段中指定参数也是合法的。因此给定一个这样的 URL:

http://www.a.com/frisbee/brand

这样写是合法的:

http://www.a.com/frisbee;color=red;size=small/brand;test=1

在实践中我从来没有见过这个。哪些框架(如果有)利用了它?

我最近在使用 ASP.NET MVC3,我不确定它是否可以提取这些类型的参数。

最佳答案

许多现代框架将支持在其 URL 解析系统中将变量指定为路径段的一部分。

Symfony (PHP) 和 Django (Python) 都支持这一点,因为它们支持通过正则表达式从 URL 中提取值。

一个重要的区别是查询字符串中指定的参数通常可以按任何顺序排列,因为它们通常会被解析为类似字典的结构。这不适用于路径段中的参数。您当然可以自己将它们解析成字典,但我刚才提到的框架不会帮助您这样做。

请注意,无论如何,从技术上讲,参数的顺序在 HTTP URI 中很重要,即,如果参数(在路径或查询字符串中)的顺序不同,则两个 URL 的一致性比较必须假设它们可以引用不同的资源。

关于asp.net-mvc-3 - URL 路径参数用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6765627/

相关文章:

php - 在 PHP 中设置 Curl 的超时时间

javascript - Angularjs $location 第一次不会触发,下次使用旧值

asp.net-mvc-3 - Razor 模型类型转换

asp.net-mvc-3 - 如何在 mvc3 razor View 中使用 session 变量保留数据?

http - 如何在POST请求中获取参数

php - 检查 url 是否有 http ://at the beginning & inserting if not

c# - 获取Azure中资源的绝对URL

asp.net - MVC3 Values Ajax 文件上传

asp.net-mvc-3 - ASP.NET MVC 不会将 aspx 页面中的模型对象转换为适当的已将模型发送到此页面的方法

c# - 使用 POST 请求的简单 Web 服务器 - 服务器在一两个请求后挂起