每當遇上前後端分離的專案,若要測試 api 串接為了避免 CORS 錯誤,一定會搭配 vue-cli 系列工具所提供的 devServer 來進行 proxy 轉址。這在 GET 的請求是沒問題,不過若遇上使用 POST 時,會有一定機會出現 Proxy error: Could not proxy request。這回在用 POST 傳遞 JSON 格式資料到後端就觸發了這個情境,這邊筆記下緣由和處理方法。
內容
發生原因
vue-cli 所搭配的 proxy 為 http-proxy-middleware。若你需要透過此 proxy 代理有 req.body (代表為 POST) 的請求,那麼你需要設定 Buffer 轉傳資料,否則會無法運行。
設定檔
參考資料
1. 前后端分离vue跨域,devServer配置proxy代理, post请求无法接收json格式参数报错400, Could not proxy request… ECONNRESET
2. Proxy error: Could not proxy request 解决方案