我正在尝试从前端React项目发送请求到后端(我都创建了),在Postman上可以运行,但在React中出现错误。

15 浏览
0 Comments

我正在尝试从前端React项目发送请求到后端(我都创建了),在Postman上可以运行,但在React中出现错误。

我在我的API上创建了一个端点http://XX.XXX.XX.XX/api/v1/endpoint,它接收以下字符串:

{

"user": "RANDOM USER",

"url": "RANDOM URL",

"keyWord": "RANDOM KEYWORD"

}

并返回一个结果。

它在Postman上运行得非常好,但在项目的前端部分出现了一个错误,我似乎找不出原因。

起初我以为这与身份验证有关,但我已经更改了API,不再需要登录,但仍然无法在React项目中工作(在Postman中可以工作)。

这是错误信息:

error

这是前端代码:

import axios from 'axios';
 const user = "RANDOM USER";
 const url = "RANDOM URL";
 const keyWord = "RANDOM KEYWORD";
  const test = async () => {
    const details = JSON.stringify({
      user,
      url,
      keyWord,
    });
    try {
      await axios
        .get('http://XX.XXX.XX.XX/api/v1/endpoint', details, {
          headers: {
            'Content-Type': 'application/json',
          },
        })
        .then((res) => {
          console.log(JSON.stringify(res.data));
        })
        .catch((err) => {
          if (err.response) {
            // console.log(details); //WORKS
            console.log(err.response.data.error);
          }
        });
    } catch (e) {
      console.log(e);
    }

这是后端代码:

exports.test = catchError(async (req, res, next) => { //catchError是一个包含try-catch的外部函数,用于捕获错误,它运行正常
  const { url, keyWord } = await req.body;
  const response = await axios.get(url);
  const html = await response.data;
  res.status(200).json({
    status: 'success',
    data: {
      'XXXX'
    }
  });

有什么想法吗?请帮忙!

0