好的,我已经为此奋斗了几个小时。我使用 .NET Web API 作为后端,我必须承认我并不完全理解这个东西是如何工作的。我发现 REST api 非常隐含,当事情起作用时,它们会因为某种魔法而起作用,也就是说,因为函数名称以 Get 开头,然后发生这种情况等等。
这是我正在尝试做的事情:
在我的 Web API 控制器(NotesController)中,我有这个方法:
public HttpResponseMessage Put(string date, string notes)
它接收格式为 yyyy-MM-dd 的日期和一些任意文本。
我已经以这种方式在 Angular 中声明了我的资源,就像现在一样:
App.factory('NotesFactory', function ($resource) {
return $resource('/api/Notes/', {}, { update: { method: 'PUT' } });
});
最后,我的 Angular 笔记控制器上有一个 saveNotes() 方法,如下所示:
$scope.saveNotes = function ()
{
NotesFactory.update({ date: date, notes: $scope.notes }, function () {
...
});
}
我在获取 update() 方法以正确调用 Web API 中的 Put() 方法时遇到问题。
我收到的错误是:
“在控制器 'Notes' 上找不到与请求匹配的操作”
正如我所说,我不确定这到底应该如何工作。如果有人能提供一个适合我情况的具体例子,我会很高兴。我已经来回阅读了 $resource 文档,但无济于事。
有接盘侠吗?:-)