我正在尝试在http.get
调用中向后端发送多个参数。问题是我没有在快递中看到它们:
角:
$http.get("/getImage/", {params: {"filename" : $scope.recipe.image.filename, "mimetype" : $scope.recipe.image.mimetype}})
.then(function(returnData){
console.log(returnData);
})
快递:
server.get("/getImage/", function (req, res) {
console.log(req.params.filename);
})
记录后, req.params.filename
显示为undefined
。所有帮助表示赞赏。谢谢!
答案 0 :(得分:1)
我认为你的问题是在express中,req.params是指路径参数,即在像
这样的路径中app.get('/foo/:bar', function(req, res) {
console.log(req.params.bar);
});
网址有一个' bar' param,因为注册路径中有一个名为bar的参数。我相信你正在寻找的是req.query,它将查询参数从url转换为json对象,所以如果你正在点击
http://localhost:8080/foo?bar=baz
并且您想获得bar的值,您应该注册您的路线,如
app.get('/foo', function(req, res) {
console.log(req.query.bar);
});
答案 1 :(得分:0)
在角度中使用$http.get
将生成带有URL中的参数的GET请求。所以在Express中你应该可以使用req.query访问它们:
server.get("/getImage/", function (req, res) {
console.log(req.query.filename);
})