【发布时间】:2013-07-19 18:23:43
【问题描述】:
我正在使用 fiddler 来测试我正在编写的 Web API 服务。
我知道我可以将参数传递给查询字符串中的 RESTful Web 服务,请求如下: www.example.com/api/Book?Id=123&category=fiction。
还有其他方法可以将参数传递给服务,同时仍然使用 GET。
【问题讨论】:
标签: rest parameters asp.net-web-api query-string
我正在使用 fiddler 来测试我正在编写的 Web API 服务。
我知道我可以将参数传递给查询字符串中的 RESTful Web 服务,请求如下: www.example.com/api/Book?Id=123&category=fiction。
还有其他方法可以将参数传递给服务,同时仍然使用 GET。
【问题讨论】:
标签: rest parameters asp.net-web-api query-string
HTTP 请求中有很多部分可以用来传递参数,即 URI、标头和正文。 GET 请求没有正文(某些框架实际上允许这样做,但它们并不常见,因此出于所有目的,我们假设它们不能),因此您仅限于标头和 URI。
在URI中你可以在不同的地方传递参数:
# 字符之后的URI 部分。请参阅URI RFC,第 3.5 节。
您还可以在 HTTP 请求标头中传递参数。 ASP.NET Web API 支持的一个参数是Accept 标头,它在进行内容协商时使用。您还可以从这些标头中获取自定义参数,并在您的操作中读取它们(或者甚至让值提供者读取它们并将它们映射到方法本身的参数)。
【讨论】: