Express api提取请求返回未定义的

时间:2019-05-27 23:10:30

标签: node.js reactjs express fetch-api

编辑:我在这里不问任何关于cors的问题

所以我花了数小时试图弄清楚到底是怎么回事,而...我正在失去它...

所以我有一个简单的应用程序,它的服务器部分是由nodejs制成的,前端是react,它们在不同的端口上运行,所以我使用了cors模块。

无论如何 这是我使用express的nodejs api

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cors());
app.get('/', (req, res) => {
  res.send({data:"Hello"});
});
app.listen(port, () => console.log(`Listening on port ${port}`));

然后响应以下提取请求

    fetch("http://www.localhost:5000/",{
        method: 'GET',
        mode: "no-cors",
        cache: "no-cache", 
        credentials: "same-origin", 
        headers: {"Content-Type": "application/json"}
      })
    .then(res=>{
        console.log("res1",res)
        res.text();
    })
    .then(res=>{
        console.log("res2",res)
    })
    .catch(res=>{
        console.log("Exception : ",res);
    })

问题是,无论我尝试什么,此req都会返回未定义的内容。 在res 1中,响应是一个对象(在这种情况下为不透明)

  

响应{类型:“不透明”,网址:“”,重定向:false,状态:0,确定:   错误,…}

res2尚未定义。

我想念什么?

1 个答案:

答案 0 :(得分:0)

fetch("http://www.localhost:5000/",{
        method: 'GET',
        mode: "no-cors",
        cache: "no-cache", 
        credentials: "same-origin", 
        headers: {"Content-Type": "application/json"}
      })
    .then(res=>{
        console.log("res1",res)
        return res.text();
    })
    .then(res=>{
        console.log("res2",res)

    })
    .catch(res=>{
        console.log("Exception : ",res);
    })