如何使用两个参数生成 ngResource url
How to Generate ngResource url with two parameters
我正在尝试使用 angularjs 中的 ngResource 生成这个 url:
http://url_api/contact/58dc70f18e029b1338a97abc/address/58e3e3988e029a1aec5ad465
但我得到的是:
http://url_api/contact/58dc70f18e029b1338a97abc/address?address_id=58e3e3988e029a1aec5ad465
这是我的工厂
factory('Addresses', function($resource) {
return $resource(url_base + 'contact/:id/address',{},{
get: {
method: 'GET',
isArray: true,
url: url_base + 'contact/:id/address'
},
save:{
method: 'POST'
},
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
});
})
我以后就是这样称呼它的
Addresses.delete({id:$scope.id_contact,address_id:address_id_delete})
请问有人能帮帮我吗?我很着急
您需要在空对象中提及您的 params
。像这样:
factory('Addresses', function($resource) {
return $resource(url_base + 'contact/:id/address',{
id: '@id',
addressId: '@addressId'
},{
get: {
method: 'GET',
isArray: true,
url: url_base + 'contact/:id/address'
},
save:{
method: 'POST'
},
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
});
})
url模板中的参数需要与调用中的参数匹配:
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
//WRONG address_id
//Addresses.delete({id:$scope.id_contact,address_id:address_id_delete})
//RIGHT addressId
Addresses.delete({id:$scope.id_contact,addressId:address_id_delete})
我正在尝试使用 angularjs 中的 ngResource 生成这个 url:
http://url_api/contact/58dc70f18e029b1338a97abc/address/58e3e3988e029a1aec5ad465
但我得到的是:
http://url_api/contact/58dc70f18e029b1338a97abc/address?address_id=58e3e3988e029a1aec5ad465
这是我的工厂
factory('Addresses', function($resource) {
return $resource(url_base + 'contact/:id/address',{},{
get: {
method: 'GET',
isArray: true,
url: url_base + 'contact/:id/address'
},
save:{
method: 'POST'
},
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
});
})
我以后就是这样称呼它的
Addresses.delete({id:$scope.id_contact,address_id:address_id_delete})
请问有人能帮帮我吗?我很着急
您需要在空对象中提及您的 params
。像这样:
factory('Addresses', function($resource) {
return $resource(url_base + 'contact/:id/address',{
id: '@id',
addressId: '@addressId'
},{
get: {
method: 'GET',
isArray: true,
url: url_base + 'contact/:id/address'
},
save:{
method: 'POST'
},
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
});
})
url模板中的参数需要与调用中的参数匹配:
delete:{
method: 'DELETE',
url: url_base + 'contact/:id/address/:addressId',
// params:{
// id: '@_id',
// addressId: '@_addressId'
// }
}
//WRONG address_id
//Addresses.delete({id:$scope.id_contact,address_id:address_id_delete})
//RIGHT addressId
Addresses.delete({id:$scope.id_contact,addressId:address_id_delete})