由于网络原因,getServerSideProps中的nextjs请求API将失败,在dev中,我想配置代理,但我找不到方法,请问有什么解决方案吗?
bvjxkvbb1#
首先,您需要安装以下npm软件包:
"https-proxy-agent": "5.0.1", "net": "1.0.2", "tls": "0.0.1",
然后创建baseFetchOptions.ts
baseFetchOptions.ts
const HttpsProxyAgent = require('https-proxy-agent'); const baseFetchOptions: any = {}; if(process.env.HTTP_PROXY) { const proxyUrl = new URL(process.env.HTTP_PROXY); baseFetchOptions.agent = new HttpsProxyAgent({ host: proxyUrl.hostname, port: proxyUrl.port }); } export default baseFetchOptions;
现在您可以使用它。示例:
import baseFetchOptions from "@/utils/baseFetchOptions"; const response = await fetch( "https://...", { ...baseFetchOptions, method: "POST", }, );
如果要测试它,可以使用squid docker容器。
"dev": "HTTP_PROXY=http://127.0.0.1:3128/ next dev",
1条答案
按热度按时间bvjxkvbb1#
首先,您需要安装以下npm软件包:
然后创建
baseFetchOptions.ts
现在您可以使用它。示例:
如果要测试它,可以使用squid docker容器。