簡體   English   中英

如何在沒有 create-react-app 的情況下像在 CRA 中一樣配置代理?

[英]How to configure a proxy like in CRA without create-react-app?

create-react-app ,我可以使用proxypackage.json自動配置代理服務器,如這里所描述https://create-react-app.dev/docs/proxying-api-requests-in-development/

這允許我從不同的端口為我的應用程序提供服務。

如何在沒有create-react-app情況下進行相同的配置?

使用相同的代理來受益於與 create-react-app 相同的配置會很好。

您可以創建一個文件與節點一起運行以充當您的代理。 像這樣:

代理.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

PS:不要在生產中使用它:D

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM