我正在使用create-react-app创建一个新应用,我想为我的代码添加一些代理。以前我使用过webpacks devServer

module.exports = {
  ...
  devServer: {
    proxy: {
      '/api/context*': {
        target: 'http://some.endpoint.com',
        headers: myCustomerHeaders,
        pathRewrite: (path, res) => changeThePath
      }
    }
  }
  ...
}


我已经尝试在webpack.config.dev.js和webpackDevServer.config.js中使用相同的方法,并将start.js作为proxyConfig传递给webpackDevServer.config.js。

我看到了src / setupProxy.js的著作,但是如果expressJs不在某个地方运行,它是否适用?无论如何,我尝试了一下却没有任何结果。我要代理的路径是我希望使用的测试环境api。

我已经使用create-react-app作为旧应用程序的新框架来升级它,我的旧项目可以使用代理设置。

既然我正在使用create-react-app,我期望同样的方法是合理的,但似乎我是错的。有人认为我做错了吗?

最佳答案

您可以使用“ http-proxy-middleware”

https://github.com/chimurai/http-proxy-middleware

var express = require('express')
var proxy = require('http-proxy-middleware')

var app = express()

app.use('/api', proxy({ target: 'http://www.example.org', changeOrigin: true }))
app.listen(3000)

关于javascript - 如何在Create React App中使用Webpack devServer代理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54024995/

10-12 00:15
查看更多