AngularJs $resource、REST 和 Symfony2 FOSRestBundle
AngularJs $resource, REST and Symfony2 FOSRestBundle
我正在使用 FOSRestBundle,这个包为我生成路由并将这些路由复数化。例如,对 /users.json 的 GET 请求不同于对 /user/15.json 的 GET 请求
值得注意的是,调用 /users/15。json 失败。
这里有更多关于这个问题的信息https://github.com/FriendsOfSymfony/FOSRestBundle/issues/247
在我的 Angular 应用程序中,我使用 $resource
创建一个 RESTful 调用,URL 是一个模板,详见此处 https://docs.angularjs.org/api/ngResource/service/$resource
例如
$resource('http://example.com/:id.json')
或
$resource('http://example.com/user/:id.json')
这就是问题所在,$resource
似乎只接受一个 URL REST 资源模板,但由于 FOSRestBundle 的强制复数化,我有多个模板。
我不认为破解 FOSRestBundle 是解决问题的方法,所以我可以如何使用 AngularJs 中的 $resource
来纠正这个问题?
您可以为每个方法设置 url 作为第三个参数 - actions
angular.module("example", ["ngResource"])
.factory("userService", function($resource) {
return $resource("http://example.com/user/:id.json", {
id: "@id"
}, {
'query': {
url: "http://example.com/users"
}
})
})
.run(function(userService) {
userService.query();
userService.get({id:1});
})
我正在使用 FOSRestBundle,这个包为我生成路由并将这些路由复数化。例如,对 /users.json 的 GET 请求不同于对 /user/15.json 的 GET 请求
值得注意的是,调用 /users/15。json 失败。
这里有更多关于这个问题的信息https://github.com/FriendsOfSymfony/FOSRestBundle/issues/247
在我的 Angular 应用程序中,我使用 $resource
创建一个 RESTful 调用,URL 是一个模板,详见此处 https://docs.angularjs.org/api/ngResource/service/$resource
例如
$resource('http://example.com/:id.json')
或
$resource('http://example.com/user/:id.json')
这就是问题所在,$resource
似乎只接受一个 URL REST 资源模板,但由于 FOSRestBundle 的强制复数化,我有多个模板。
我不认为破解 FOSRestBundle 是解决问题的方法,所以我可以如何使用 AngularJs 中的 $resource
来纠正这个问题?
您可以为每个方法设置 url 作为第三个参数 - actions
angular.module("example", ["ngResource"])
.factory("userService", function($resource) {
return $resource("http://example.com/user/:id.json", {
id: "@id"
}, {
'query': {
url: "http://example.com/users"
}
})
})
.run(function(userService) {
userService.query();
userService.get({id:1});
})