webpack-dev-server: i-route ang mga tawag HTTPS API sa corporate proxy
Bigyan ang umiiral na proxy middleware ng webpack-dev-server ng HttpsProxyAgent habang pinapanatili ang target at path rewrite nito.
I-configure ang koneksyon ng API sa panig Node sa webpack.config.mjs gamit ang kasalukuyang anyo ng proxy array:
import { HttpsProxyAgent } from 'https-proxy-agent';
export default {
devServer: {
proxy: [{
context: ['/api'],
target: 'https://service.example',
changeOrigin: true,
agent: new HttpsProxyAgent('http://proxy.example:8080'),
pathRewrite: { '^/api': '' },
}],
},
};Ang ruta ay:
browser → webpack dev server → corporate proxy → HTTPS APIAng target ay nananatiling tunay na HTTPS API. Ang agent, na ipinapalagay na available na sa proyekto, ay nakikipag-usap sa landas sa pamamagitan ng HTTP intermediary.
Pinipili ng context ang mga landas ng kahilingan na nakikita ng browser; tinatanggal ng pathRewrite ang development prefix. Wala sa kanila ang nagpapangalan sa corporate proxy. Panatilihin ang mga mapping na iyon para sa landas na inaasahan ng API.
Gamitin ang normal na streaming at paghawak ng tugon ng middleware upang manatiling makikilala ang pagtanggi ng API at pagkabigo ng transportasyon. Ang ikalawang relay na isinulat sa kamay na laging nagbabalik ng 200 ay magtatakip sa resultang iyon.
Ang mga setting ng proxy ng browser at ang proxy ng pag-download ng package ng npm ay nag-configure ng ibang mga consumer. Ang setting na ito ay pag-aari ng proseso ng webpack na gumagawa ng panlabas na tawag sa API.