Я использую FOSRestBundle, этот комплект генерирует маршруты для меня и плюрализует эти маршруты. Например, запрос GET для /users.json отличается от запроса GET на /user/15.json
Стоит отметить, что вызов /sers/15.json не выполняется.
Подробнее об этой проблеме здесь https://github.com/FriendsOfSymfony/FOSRestBundle/issues/247
В моем приложении "Угловое" я использую $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 - это ответ, так что я могу сделать с моим использованием $resource
в AngularJs, чтобы исправить эту проблему?
вы можете установить URL для каждого метода в качестве третьего параметра - действия
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});
})
id: "@id"
- при ее удалении мой код все еще работает?
mode
дляusers
не помогает - мне нужно динамически установить его как - то в зависимости от требований запроса.