我有以下特快航线:
{
"query": {
"bool": {
"must_not": {
"exists": {
"field": "shortdesc"
}
}
}
}
}
我有两个控制台日志{
"query": {
"bool": {
"must_not": {
"term": {
"shortdesc": ""
}
}
}
}
}
和router.get(
"/auth/google/callback",
passport.authenticate("google", { failureRedirect: "/error", session: false }),
function(req, res) {
var token = req.user.token;
res.redirect("/getData?token=" + token);
}
);
router.get('/getData', function(req, res) {
var token = req.query.token;
console.log(token)
request('https://www.googleapis.com/analytics/v3/management/accounts?access_token=' + token,
function (error, response, body) {
let views = []
JSON.parse(body).items.forEach(view => {
views.push({
name: view.webPropertyId + ' - ' + view.name + ' (' + view.websiteUrl + ')'
})
})
res.redirect("/test?data="+ views);
});
})
router.get('/test', function(req, res) {
var testdata = req.user.data;
console.log(testdata)
res.send("ok")
})
。第一个控制台日志正在运行,第二个控制台日志未返回任何信息。我尝试了多种方法将数据从请求传递到测试页,但我无法做到这一点。为什么?
答案 0 :(得分:1)
您似乎正在尝试通过查询参数传递数据,然后尝试通过req.user
读取数据。在我看来,这只是语法错误。将req.user.data
更改为req.query.data
。