ASP.NET WebAPI - [FromBody]的问题

时间:2015-02-02 16:32:29

标签: c# asp.net-web-api

我希望实施一个新的API,而不是沿着我常用的PHP路线选择C#。

我与“MVC 4 API”进行了一些小游戏。例如,但到目前为止我似乎无法满足我的要求。

我创建了一个名为' Values'并有以下方法:

[HttpPost]
public void Post([FromBody]string value)
{
    string body = value;
}

然后我通过fiddler将以下POST请求发送到所述API:

User-Agent: Fiddler
Host: localhost:56501
Content-Length: 10
Content-Type: application/x-www-form-urlencoded; charset=UTF-8

value=test

运行此操作后,看起来好像正在调用该方法,但在尝试获取“'值”时通过身体发送,它似乎没有接受它,而是给我一个空。

1 个答案:

答案 0 :(得分:2)

我似乎无法使其适用于Content-Type: application/x-www-form-urlencoded,但这应该同时起作用:)

User-Agent: Fiddler
Host: localhost:56501
Content-Length: 6
Content-Type: application/json; charset=UTF-8

"test"

所以我发现如果你需要让它与application/x-www-form-urlencoded一起使用,那么你只需要传递=value作为你的请求的主体。绝对奇怪,但我想这不是MVC,它是WebApi,所以你不应该传递application/x-www-form-urlencoded;)