获取回调时,Express.js req.body未定义

时间:2017-10-18 16:10:44

标签: javascript node.js express callback

我正在尝试从Dribbble Auth API接收回调。身份验证过程正常,直到我尝试使用NodeJS获取响应数据。

我的回调网址为http://localhost:8080/callback 回调网址看起来像http://localhost:8080/callback?code=11ee328ab7935bd7240cbff0a2d0b8c93e96547e0a3&state=aoksdmSAOKDm

我正在使用body-parser和multer。

var express = require("express");
var multer = require("multer");
var bodyParser = require("body-parser");
var cookieParser = require("cookie-parser");
var upload = multer({ storage: multer.memoryStorage() });

var app = express();

app.use(cookieParser());
app.use(bodyParser.urlencoded({
  extended: true
}));
app.use(bodyParser.json());
app.use(express.static(path.join(__dirname, "../webapp/")));

app.get("/callback",  upload.single("code"), (req,res) => {
  console.log(req.body);
  res.send()
}

控制台中的响应是未定义

2 个答案:

答案 0 :(得分:3)

查询不在req.body中,并带有GET请求。你必须这样做:

req.query

答案 1 :(得分:2)

您正在发送GET请求。请检查

req.query

更多细节参考 http://expressjs.com/en/api.html