无法在React中使用axios发送发布请求

时间:2020-04-29 15:54:57

标签: excel reactjs axios office-js office-addins

我正在尝试使用axios.post()从我的Excel插件向后端发送发布请求,但是由于某种原因该请求无法通过。尽管我不确定,但我怀疑这与CORS有关,或者与请求是从Excel的插件内部发出的事实有关的。

这是我的代码(出于保密原因,不是真实的网址):

 const handleLogin = e => {
    e.preventDefault();

    const url = "https://myapiendpoint.com";
    const data = {
      email: email,
      password: password
    };

    axios
      .post(url, data)
      .then(res => {
        if (res.status == 200) {
          // success
        } else if (apiResponse.status == 500) {
          // internal server error

        } else {
          // wrong credentials

        }
      })
      .catch(err => {
        console.error(err);
      });
  };

提交插件中的登录表单时,我正在调用此函数。代码对我来说似乎很好,但是catch语句在每次提交表单时都会执行。

对此我该怎么办?

谢谢!

1 个答案:

答案 0 :(得分:0)

按照我的想法,问题似乎是CORS阻止了插件中对我的后端的请求。我还没有完全确认这一点,但是我找到了一个临时解决方案,可以让我继续使用插件。

因此,我在请求中的网址开头附加了https://cors-anywhere.herokuapp.com/,并且该请求确实正确地通过了。 不用说,此解决方案只是临时的,不应在生产中使用,但是如果您需要尝试一下的话,这很容易解决。

希望有帮助!