在create-react-app
中,我可以使用proxy
中的package.json
来自动配置代理,如此处https://create-react-app.dev/docs/proxying-api-requests-in-development/
这使我可以从其他端口提供我的应用程序。
在没有create-react-app
的情况下如何进行相同的配置?
最好拥有与create-react-app相同的代理以受益于相同的配置。
答案 0 :(得分:0)
您可以创建一个文件来与node一起运行以充当代理。像这样:
proxy.js
const httpProxy = require('http-proxy');
const proxy = httpProxy.createProxyServer({
secure: false,
changeOrigin: true,
target: 'https://someOriginURL.com',
// could be an IP address target: 'https://XX.XX.XXX.XXX/',
}).listen(3500, () => console.log('Proxy running on port 3500'));
// Intercepts the request
proxy.on('proxyReq', function(proxyReq, req, res, options) {
console.log(req);
// Set the headers of the intercepted request
proxyReq.setHeader('Origin', 'https://yourorigin.com');
// remove any headers you want
// proxyReq.removeHeader('authorization');
res.oldWriteHead = res.writeHead;
res.writeHead = function(statusCode, headers) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.oldWriteHead(statusCode, headers);
}
});
要使用此功能,请打开终端并运行:
node proxy.js
P.S .:请勿在生产环境中使用:D