iT邦幫忙

2022 iThome 鐵人賽

DAY 11
0
Modern Web

React 新手村 - 填坑記系列 第 11

React 新手村 - 填坑記 - Day11 開發問題(七)

  • 分享至 

  • xImage
  •  

React Axios常見問題

身體不是ING,後續再給大家補上

1. Post給出錯誤請求的資源上不存在“Access‑Control‑Allow‑Origin”標頭 (Axios Post in react js is giving error No 'Access‑Control‑Allow‑Origin' header is present on the requested resource)

方法一. 添加proxy到package.json

  },
  "proxy": "http://localhost:8080",
  "devDependencies": {

然後增加localhost之後的資訊

axios.get("/member/login")

方法二. 在spring boot添加CORS過濾器配置,並將application/x-www-form-urlencoded添加到axios請求中

export const addProjectTask = (username,password, history) => async dispatch => {

axios.post('http://localhost:8080/member/login', 
  Qs.stringify({
  username: username,
  password: password
  }), {
  headers: { 
  "Content‑Type": "application/x‑www‑form‑urlencoded"
}})
.then(function (response) {
  console.log(response);
  history.push("/");  
})
.catch(function (error) {
  console.log(error);
});
};

方法三. 建立proxy來調用API,並定向到相對應的服務器

  • Install http‑proxy‑middleware
    npm install http‑proxy‑middleware ‑‑save
  • create src/setupProxy.js
    const proxy = require('http‑proxy‑middleware');

    module.exports = function(app) {
        app.use(proxy('/api', { target: 'http://localhost:8080/' }));

    };
  • Then run your local Dev server

上一篇
React 新手村 - 填坑記 - Day10 開發問題(六)
下一篇
React 新手村 - 填坑記 - Day12 開發問題(八)
系列文
React 新手村 - 填坑記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言