我是 ASP.NET Web API 的新手,我发现它有一个非常烦人的限制。它只支持一个参数来发布方法。(在这里阅读更多:使用 jQuery 将 [FromBody] 参数发布到 Web API)
从那个链接来看,他们似乎是这样设计的。有这样奇怪的限制对我来说没有任何意义。
如果有人知道为什么要这样设计,请告诉我。
我是 ASP.NET Web API 的新手,我发现它有一个非常烦人的限制。它只支持一个参数来发布方法。(在这里阅读更多:使用 jQuery 将 [FromBody] 参数发布到 Web API)
从那个链接来看,他们似乎是这样设计的。有这样奇怪的限制对我来说没有任何意义。
如果有人知道为什么要这样设计,请告诉我。
这就是 HTTP 的工作方式。HTTP POST 发送一个正文。作为一个 web api,该 body 代表正在发布的资源对象。
POST 中的“对象”可以是具有许多属性的复杂对象,因此您可以创建一个包装对象来表示资源。它也可以是作为资源集合的对象数组。
附带说明一下,如果您正在设计 RESTful Web api,那么最好将单个资源或资源(对象)数组发布到代表资源集合的端点。例如,我将一个学生发布到 /api/students,它会添加该学生。
你可以有很多参数,但你只能有一个[FromBody]
,这是因为一条 HTTP 消息只能有一个正文。您可以将任意数量的参数映射到查询字符串上的参数。