解決webpack中dev-server不能匹配post請求的問題
阿新 • • 發佈:2019-01-30
解決webpack不能匹配post請求的問題
webpack的dev-server只能匹配get請求,在本地做本地資料的時候會很不方便。
可以使用如下兩種辦法解決:
1.在webpack.config.js配置檔案中的devServer欄位加入
devServe:{ setup: (app) => { //解決post沒響應的問題 app.post('/goform/**', function(req, res) { res.redirect(req.originalUrl); //重定向到對應路徑 }); } }
2.在node_modules裡找到webpack-dev-server/lib/server.js中,在Server這個函式中,大約100行左右的地方加入如下程式碼。來攔截post請求。當然,路徑要自己寫,也可以寫成上面那樣。
app.post('/goform/*', (req, res) => { res.setHeader('Content-Type', 'text/plain;charset=UTF-8'); let filename = path.join(__dirname,'..','..','..',`public/${req.originalUrl}.txt`); fs.exists(filename, exists => { if(exists) { fs.createReadStream(path.join(__dirname,'..','..','..',`public/${req.originalUrl}.txt`)).pipe(res); }else { res.end(`${req.originalUrl}' <- <- 老鐵,這個介面你還沒寫。`); } });