我试图通过JSON REST API将$resource
连接到我的数据库。但是,我遇到了与$resource
的网址模板参数相关的一个非常奇怪的问题。我希望它在我致电http://localhost:5000/api/person/123
时返回API.get({type: "person", id: 123}, callback);
的对象,但由于某种原因,它决定尝试GET
明显失败的网址http://localhost:5000/api/:type/:id/[Object object]
。
以下是一些重现错误的代码:
var app = angular.module('app', ['ngResource']);
app.factory("API", function($resource) {
return $resource("http://localhost:5000/api/:type/:id", null)
});
app.controller("TestCtrl", function($scope, API) {
t = API.get({type: "person", id: "53b29e180ee099757405fb84"}, function(person) {
console.log(person);
});
console.log(t);
};
我尝试修改默认参数(即$resource(url, {type: "@type", id: "@_id"})
)但没有成功。我从同事那里听说默认参数可以为空,它仍然应该将参数映射到模板,但它只是赢了。
我可能犯了一些愚蠢的错误,但是我已经把我的头发拉了几个小时而没有找到捕获物,所以我把这个问题交给了你。提前谢谢。
答案 0 :(得分:0)
显然有人在凉亭里有一个名为ng-resource
的包裹,误导性地与实际包裹angular-resource
相似。
我之前没有调查过这种可能性,我感到无比羞耻......