reactjs - 如何在我的应用程序中每个获取请求的开头添加一个 URL?
问题描述
我有一个以CRA开头的 react 应用程序,并为我的 react 应用程序设置了一个后端服务器。
我的获取请求类似于
const res = await fetch("/applications", {
...
我已经使用http-proxy-middleware 为我的应用程序设置了代理中间件
const { createProxyMiddleware } = require('http-proxy-middleware');
module.exports = function(app) {
app.use(
createProxyMiddleware({
target: 'https://projects.mydomain.com/',
changeOrigin: true,
})
);
};
当我使用fetch("/applications")
我的请求向后端发出请求时,get 被解析为fetch("/projects.mydomain.com/applications")
但是我需要在所有获取请求的开头添加一个 url 路径,我最终想要的结果是:
fetch("/projects.mydomain.com/b2b-iys/applications")
我试过这样做:
app.use(
'/b2b-iys/',
createProxyMiddleware("/b2b-iys", {
target: 'https://projects.muhammed-aldulaimi.com/',
changeOrigin: true,
})
);
但这没有用。
理想情况下,我希望将其添加到我的代理中,而不是一一更改文件。
这里有什么解决方案?
解决方案
从 http-proxy-middleware文档中,我认为您可以使用该pathRewrite
选项添加基本路径:
app.use(
createProxyMiddleware({
target: 'https://projects.mydomain.com',
changeOrigin: true,
pathRewrite: {'^/': '/b2b-iys/'}
})
);
推荐阅读
- sql - 将电子表格存储在数据库中
- c# - 实体框架:“数据库更新”上的错误“无法将参数绑定到参数‘路径’”
- python-3.x - 在 Tkinter 的 Listbox 中弹出特定文件
- php - getenv() 不会显示所有变量,即使它们已设置
- javascript - 搜索json对象并获取数据
- javascript - 如何同时动态显示和隐藏 div?
- javascript - 如何防止 Three.js OBJLoader 将我的 obj 的所有部分合并到 1 个网格中?
- sql - 如何将 exec 结果分配给多个 sql 变量?
- javascript - 如何包含外部 HTML 头?
- java - Java:如何验证自然语言文本