【问题标题】:Can't make a POST request using axios无法使用 axios 发出 POST 请求
【发布时间】:2020-09-17 08:06:22
【问题描述】:

我得到的错误信息是

“跨域请求被阻止:同源策略不允许读取位于http://localhost:5000/user/login 的远程资源。(原因:CORS 标头‘Access-Control-Allow-Origin’缺失)。”

http-header.js

"import axios from 'axios';

export default axios.create({
  baseURL: "http://localhost:5000",
  headers: {
    'Content-type': 'application/json',
    'Access-Control-Allow-Origin': '*'
  }
})

AuthService.js

import axios from '../http-header.js'

export default {
  login : user => {
    return axios.post('/user/login', user)
    .then(res => {
      if(res.status !== 401)
        return res.json().then(data => data)
      else {
        return {isAuthenticated: false, user: {username: "", role: ""}}
      }
    })
  }
}

【问题讨论】:

    标签: axios


    【解决方案1】:

    您必须将'Access-Control-Allow-Origin': '*' 添加到您的后端。

    【讨论】:

    • 谢谢,我是一个新的编码员。我最初使用 fetch 关键字编写了这个,它工作得很好,但是当我使用 axios 重写时它就坏了。有没有理由为什么在 fetch 中添加这一行可能不是必需的,但对于 axios 而言?
    • 我不确定,但我认为这与 Axios vs Fetch 中的请求标头有关。附言。您无需使用 Axios 致电 res.json()return res.json()return res.data 应该足够了。
    • 酷豆。再次感谢!
    猜你喜欢
    • 2022-01-15
    • 2020-05-23
    • 1970-01-01
    • 1970-01-01
    • 2022-11-02
    • 2021-11-12
    • 1970-01-01
    • 2014-01-30
    • 2021-06-07
    相关资源
    最近更新 更多