【问题标题】:axios 403 forbidden on OPTIONS requestaxios 403 在 OPTIONS 请求中被禁止
【发布时间】:2017-11-28 11:09:00
【问题描述】:

我正在开发一个使用 React+Redux 并使用 axios 进行 api 调用的应用程序。

这是一个失败的示例调用:

axios.post(`${API_ROOT}${FIND_USER}${currentUserID}`, {
        headers: {
                'Authorization': token
        },
      })
    .then((response) => {
        console.log("Sucess")
    })

我在network 中看到的请求网址类似于:

http://domainName:8080/users/findUser/1234

API 调用在 OPTIONS 本身失败,我从后端收到的错误是

Response for preflight has invalid HTTP status code 403

它永远不会到达POST

token 是从 localstorage 检索的,类似于 Bearer eyJhbGci...

后端开发人员正在使用 Java 和 Spring。

我调用 API 的方式是否有问题,或者这个问题应该在后端解决?

通过 Postman 测试时,此 API 工作正常。

【问题讨论】:

  • 这可能是 CORS 问题,当您通过 Postman 发出请求时,您是否在响应中看到任何 Access-Control-Allow-Origin 标头?

标签: java reactjs redux axios create-react-app


【解决方案1】:

原来在后台已经有解决这个问题的办法了:

How to configure CORS in a Spring Boot + Spring Security application?

它就像一个魅力!

【讨论】:

    【解决方案2】:

    'headers' 在 axios 的 POST 请求中总是作为第三个参数出现。如果有任何参数,请给出第二个参数或将第二个参数作为空字符串传递。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 1970-01-01
      • 2019-05-27
      • 2014-10-31
      • 2016-11-24
      • 2012-02-03
      • 1970-01-01
      相关资源
      最近更新 更多