在url http.get AngularJS中传递sub params

时间:2016-04-18 08:11:17

标签: angularjs url

我需要从这个模式的网址获取 api/v1/album/:albumId/song/:songId/

如何在网址中传递这些参数。

我尝试在{中使用params params: { albumId: 2, songId: 4 }

但GET调用是api/v1/album/:albumId/song/:songId/?albumId=2&songId=4 代替 api/v1/album/2/song/4/

如何在不使用字符串连接的情况下完成此操作?

2 个答案:

答案 0 :(得分:1)

如果您使用RESTful服务,var Song = $resource('/api/v1/album/:albumId/song/:songId/', {albumId: '@albumId', songId: '@songId'}); Song.get({albumId: 2, songId: 4}, function(song) { //returned song object }); //or chaining with promise object Song.get({albumId: 2, songId: 4}) .$promise.then(function(song){ //success handler $scope.selectedSong = song; }, function() { //failure handler }); 可以让这项工作更轻松:

此处有更多信息:https://docs.angularjs.org/api/ngResource/service/ $ resource

示例代码:

{{1}}

有更多选择取决于您的要求。希望这可以帮助你:)

答案 1 :(得分:0)

Params: { .. }在网址上连接为查询字符串,在您的情况下发生。只需构建包含参数值的网址,例如

var url = 'api/v1/album/1/song/2';
$http.get(url).then(function(){ .... });
相关问题