我正在尝试在快递服务器中发出get请求,当前该服务器仅打印所有发布请求,并且可以正常工作,问题是当发出GET请求时,响应返回为“ undefined” >
var env = process.env.NODE_ENV || "development";
var config = require("./config")[env];
const express = require("express");
const bodyParser = require("body-parser");
const axios = require("axios");
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
const hostname = config.server.host;
const port = config.server.port;
app.post("/", (req, res) => {
console.log(req.body);
res.sendStatus(200);
axios
.get("https://reqres.in/api/products/3")
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error.response);
});
});
app.listen(port, hostname, () =>
console.log(`Server running at http://${hostname}:${port}/`)
);
答案 0 :(得分:0)
使用Postman将Api呼叫发送到服务器。我在下面附加了链接。
希望这会有所帮助。
此外,只需在您的代码中添加此调整,然后在适当的localhost上侦听,
var env = process.env.NODE_ENV || "development";
var config = require("./config")[env];
const express = require("express");
const bodyParser = require("body-parser");
const axios = require("axios");
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
const hostname = config.server.host;
const port = config.server.port;
app.post("/", (req, res) => {
console.log(req.body);
res.sendStatus(200);
axios
.get("https://reqres.in/api/products/3")
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error.response);
});
});
app.listen(1337, function(){
console.log('Express listening on port', this.address().port);
});
答案 1 :(得分:0)
执行了以下代码
axios .get("https://reqres.in/api/products/3")
.then(response => { console.log(response); })
.catch(error => { console.log(error.response); })
它已执行且工作正常。
我的猜测是,在您的情况下,它会遇到障碍
更改以下行
.catch(error => {
console.log(error.response);
});
到
.catch(error => {
console.log(error);
});
然后查看是否正在打印错误。没有为错误分配响应对象,可能是您收到undefined