无法在Angular中插入url参数

时间:2016-10-03 12:02:44

标签: javascript angularjs

这是我的$资源定义:

var Rooms = $resource('/api/social/player/rooms/:roomId', {roomID: '@roomId'});

所以我想在url参数中传递房间中的消息数量,使其看起来像/api/social/player/rooms/1?limit=100

我试图这样做:

var selRm = Rooms.get({roomId: 1, limit: 100}, function () {
    // callback body here
}

但网址只会转换为/api/social/player/rooms/1

我错在哪里?谢谢!

1 个答案:

答案 0 :(得分:1)

相反get可以尝试query

var Rooms = $resource('/api/social/player/rooms/:roomId', {roomID: '@roomId''});

查询将如下:

var selRm = Rooms.query({roomId: 1, limit: 100}, function () {
    // callback body here
}

那应该将多余的密钥附加为查询字符串参数:

Official documentation说:

  

参数对象中的每个键值首先绑定到url模板   如果存在,则将任何多余的键附加到URL搜索   查询之后?。

     

给定模板/路径/:动词和参数{动词:'问候',   称呼:' Hello'}导致URL /路径/问候?敬礼=你好。