У меня есть UsersService.jsпередать несколько параметров Angularjs ресурсов
app.factory('UsersService', function($resource) {
return $resource('api/users/:id', {}, {
update: {method:'PUT'},
});
Наряду с index.php (API с PHP Слим Framework)
...
$app->get('/users/:id', 'getUser');
$app->get('/users/:username', 'getUserByUsername');
function getUser(){ ... }
function getUserByUsername(){ ... }
...
Теперь, когда я пытаюсь позвонить где-то UsersService.get({id:15});
Это работает, но когда я пытаюсь позвонить UsersService.get({username:'test'});
Это не сработает ...
Я старался изо всех сил, чтобы найти в Google, но я не мог заставить его работать. Я могу сделать отдельную услугу, чтобы получить пользователя по имени пользователя, но я хотел бы сохранить все это в одной службе, если это возможно.
Пожалуйста, помогите, спасибо!
Спасибо за ответ. Я понял, что невозможно иметь два одинаковых маршрута (даже если у них есть разные параметры: id /: username, потому что это, по-видимому, не имеет значения), поэтому я добавил '' getUserByUsername ': {method:' GET ', url: 'api/userByUsername /: username'}, 'in UsersService.js и в php я добавил' $ app-> get ('/ userByUsername /: username', 'getUserByUsername'); 'и теперь он работает так, как я хотел. – justonequestion