This question already has answers here:
AngularJS passing data to $http.get request
(7个答案)
2年前关闭。
我正在尝试将标识符的值通过url传递给快递路由器,我想传递的变量是IDR,该IDR是我从$ routeParams.IDR正确获取的,现在我必须通过$ http传递它,但是我做不到。
那就是我的controller.js
($ routeParams.IDR工作正常)
通过令牌过滤器并正确到达此方法后:
我无法获取存储在RequestData中的值(该值为5),我尝试了几种没有结果的方法,在控制台“ req.body.IDR”中未定义,并且如果更改了“ req.body.IDR”在值5的陈述中,它完美地运作了,关于如何实现的任何想法?
这是来自console.log的查询结果:
选择*从公共。“ Destino” D加入公共。“ RutaDestino” RD开
D.“ IDD” = RD。“ IDD”其中“ IDR” =未定义OR BY BY D.“ IDD” ASC
问候。
注意路由中的“:IDR”值。
然后在您的控制器中,您可以使用$ routeParams.IDR访问它
(7个答案)
2年前关闭。
我正在尝试将标识符的值通过url传递给快递路由器,我想传递的变量是IDR,该IDR是我从$ routeParams.IDR正确获取的,现在我必须通过$ http传递它,但是我做不到。
那就是我的controller.js
($ routeParams.IDR工作正常)
app.controller("rutaDestinosCtrl", function($scope, $http, userService, $routeParams){
vm = this;
vm.destinos = [];
var requestData = {
'IDR': $routeParams.IDR //$routeParams.IDR is for example: 5
};
vm.funciones = {
obtenerDestinos : function(){
$http({
method: "GET",
url: '/privadas/rutas/obtenerDestinosRuta',
requestData,
headers: {'auth-token': userService.token}
})
.then(function(respuesta){
vm.destinos = respuesta.data.data;
}, function(respuesta){
console.log("Error:", respuesta.status);
})
} //obtenerDestinos
}//funciones
vm.funciones.obtenerDestinos();
});
通过令牌过滤器并正确到达此方法后:
router.get('/obtenerDestinosRuta', function(req,res){
var query = "SELECT * FROM public.\"Destino\" D " +
" JOIN public.\"RutaDestino\" RD ON D.\"IDD\" = RD.\"IDD\"" +
" WHERE \"IDR\" = " + req.body.IDR+ " ORDER BY D.\"IDD\" ASC";
console.log(query);
db.query(query).spread(function(result, metadata){
res.json({
data: result
})
}).catch(function(err){
res.status(500).send("Error: "+ err);
})
});
我无法获取存储在RequestData中的值(该值为5),我尝试了几种没有结果的方法,在控制台“ req.body.IDR”中未定义,并且如果更改了“ req.body.IDR”在值5的陈述中,它完美地运作了,关于如何实现的任何想法?
这是来自console.log的查询结果:
选择*从公共。“ Destino” D加入公共。“ RutaDestino” RD开
D.“ IDD” = RD。“ IDD”其中“ IDR” =未定义OR BY BY D.“ IDD” ASC
问候。
最佳答案
您还可以输入路线定义吗?
在路由定义中,您必须指定期望的参数,如:
module.config(['$routeProvider', function($routeProvider) {
$routeProvider.
when('/routeName/:IDR', {templateUrl: 'template.html', controller: myCtrl})
}]);
注意路由中的“:IDR”值。
然后在您的控制器中,您可以使用$ routeParams.IDR访问它
关于javascript - AngularJs,如何为$ http发送参数get ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45788032/
10-10 14:09