我需要测试 API 内的一个端点,但我已经在使用一个 API,并且我不想更改仅针对新 API 的所有调用。
我不知道事件是否可能,但是有没有某种方法可以在 package.json
中定义多个 proxy
?
是否有某种方法可以在 package.json
中传递身份验证 key ?
主服务器是本地服务器,带有代理:
"proxy": {
"/api": {
"target": "http://localhost:3001/proxy",
"changeOrigin": true,
"pathRewrite": {
"^/api": ""
}
}
},
目前我正在使用 axios
进行 API 调用,并且该项目是通过 create-react-app
启动的。
最佳答案
在package.json中,您可以根据不同API请求的模式,配置代理服务器向不同目标发出API请求,如下所示。
注意事项:
- API 模式的顺序很重要,通用请求 (*) 必须位于最后。
- 正则表达式应该匹配完整的网址,部分匹配会导致错误。
以下代码对我有用。有 3 台不同的服务器,一台用于报告请求,一台用于访问控制请求,其余所有请求都应发送到第三台服务器。
"proxy": {
"/report/.*(_get)": {
"target": "http://localhost:8093/"
},
"/access/.*(_get)": {
"target": "http://localhost:8091/"
},
"/.*": {
"target": "https://egov-micro-dev.egovernments.org/",
"changeOrigin": true
}
},
希望这有帮助。
关于reactjs - 如何通过 React 使用两个不同的 API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50726563/