我们有一个webapi项目,其中我有一个API如下:
[HttpPut]
public void Myfunc([FromBody] int a, [FromBody] int b,[FromBody] int c))
{ }
我首先启动webapi项目。获取localhost的链接...
然后从fiddler->Composer
我正确提供链接。
在输入参数部分,我试图提供如下参数:
{ “一个”: “1”, “B”: “2”, “C”: “3”}
这不起作用。如何使这项工作?
如果我按如下方式更改API:
[HttpPut]
public void Myfunc([FromBody] myClass s))
{ }
并提供上述输入然后它工作正常。请让我知道如何从机构提供多个输入......
答案 0 :(得分:0)
WebAPI不允许多个[FromBody]
- 参数。
此外,如果您定义[FromBody]参数,则无法将其作为JSON传递。以下是可行的示例:
[HttpPut]
public void Myfunc([FromBody] int a) {}
然后您的请求需要为=5
。请注意,您不能说a=5
。这也是你无法定义3 [FromBody]
- 参数的原因。
为了适应您的情况,您需要接受一个代表JSON的对象(正如您在上一条评论中提到的那样)