【发布时间】:2018-05-01 18:53:35
【问题描述】:
我正在使用 webpack-dev-server 开发我的第一个 webapack-react 应用程序,但是我遇到了向我的烧瓶后端 api 发送 POST 请求的问题,因为我不断收到 400 错误请求错误。这是我的发帖请求:
fetch('/api/login', {
method: 'post',
headers: {'Content-Type':'application/json'},
body: JSON.stringify({"first_name": "name"})
});
如果我将上述内容调整为 GET 请求(并删除正文),则请求会正常执行,并且我 api 返回数据。
再深入一点,似乎 webpack-dev-server 不允许 POST 请求 - 我是否理解正确并且有解决方法?
这是我的 webpack 开发配置:
const merge = require('webpack-merge');
const common = require('./webpack.common.js');
const webpack = require('webpack');
module.exports = merge(common, {
mode: 'development',
devtool: 'inline-source-map',
devServer: {
contentBase: './dist',
host:'0.0.0.0',
hot: true,
historyApiFallback: true,
proxy: {
'/api': {
target: 'http://flaskapp:5090',
pathRewrite: {'^/api': ''},
secure: false,
}
},
},
plugins: [
new webpack.HotModuleReplacementPlugin()
]
});
【问题讨论】:
-
前几天我遇到了同样的问题。我发现如果我从 webpack 开发服务器中的代理中删除路径重写并只使用 /api 路径,我的获取请求就可以工作。
-
我试了一下,但它似乎对我不起作用 - 仍然遇到旧的 400 (BAD REQUEST) 问题。这似乎很奇怪,我原以为在任何广泛采用的框架中发出帖子请求的能力都是标准的
-
如果有帮助,我可以发布我的 webpack.config 文件。
-
那太好了?!我花了几个小时尝试各种事情都无济于事,所以现在非常感谢任何建议!
标签: reactjs post webpack webpack-dev-server