axios.get请求返回GET,HEAD作为响应

时间:2019-11-21 13:54:58

标签: javascript node.js reactjs express axios

我正在使用React,Redux,Node,Axios,并正在使用mongoose-paginate-v2向我的请求添加分页。我的axios.get看起来像这样:

export const getUsers = (page) => {
  return (dispatch, getState) => {
    axios.get(`${USERS_ENDPOINT}/${page}`,
      {
        headers: {
          Authorization: `${USERS_TOKEN}`,
          "token": cookies.get('token')
        }
      })
      .then(async response => {
        dispatch({
          type: GET_USERS,
          payload: response.data.list,
          page: page
        });
      }).catch(e => { console.log(e); return e })
  }
}

我的rest-api函数如下:

app.get('/allusers/:page', auth, (req,res)=>{
  console.log('req',req)
  let log={}
  Object.assign(log,{header:req.headers,body:req.body,query:req.query,params:req.params})
  request(uri,USERS_FILTER,{token: req.header('token'), page:req.params.page
}).then(result => {
    res.status(200).send(result);
  }).catch(error => {
    logger.error('log error',{error:error})
    if(error.response.errors[0].message==='Error: 401'){
      res.status(401).send('Not Permitted');
    }else{
      res.status(500).end(); // Or other error handling
    }
  });
  logger.info('users request log',log)
});

当我与邮递员一起测试时,我的后端工作正常,但是当我使用UI发送请求时,我得到状态200和GET, HEAD作为响应,当使用邮递员时,我得到了一个带有用户的标签。 这是我的请求的屏幕截图: enter image description here enter image description here

enter image description here

PS:我正在使用:

  • 节点v12.6.0
  • 反应v16.6.3
  • 表达v4.16.3

1 个答案:

答案 0 :(得分:1)

我使用cors软件包https://www.npmjs.com/package/cors解决了这个问题 enter image description here