【发布时间】:2013-09-27 13:37:29
【问题描述】:
AJAX 请求:
$.ajax({
url: url,
dataType: 'json',
type: 'Post',
data: {token:"4", feed:{"id":0,"message":"Hello World","userId":4} }
});
服务器端 Web API:
[HttpPost]
public HttpResponseMessage Post(string token, Feed feed)
{
/* Some code */
return new HttpResponseMessage(HttpStatusCode.Created);
}
错误代码 404: {"message":"没有找到匹配的 HTTP 资源 请求 URI 'localhost:8080/api/feed'。","messageDetail":"无操作 在与请求匹配的控制器 'Feed' 上找到。"}
为什么我会收到此错误以及为什么我无法将多个参数发布到我的 API?
【问题讨论】:
-
参数名称必须与服务器路由/映射匹配。第一个参数通常是
id(不是令牌),除非您更改了路由/映射默认值。 -
这是正确的代码吗?它说你正在调用
feed,但方法名称是post? -
@TrueBlueAussie localhost:8080/api/feed
-
@christiandev: feed 是控制器名称,而不是这样的 WEBAPI 调用中的方法。
-
是的,Feed 是一个控制器,而 Post 是我的 webapi 的默认操作
标签: asp.net jquery asp.net-web-api