如何将 api 请求重定向到 WAMP 上的 express 端口
How to redirect api requests to express port on WAMP
我有一个 React 应用程序向端口 9000 上 运行 的快速 api 服务器发出请求。
在开发中,我在我的 package.json 中使用了一个代理设置,它按预期工作:
"proxy": "http://localhost:9000/"
我现在已经构建并部署了 api 和客户端,并将它们都部署到 WAMP 上的 www 文件夹中。 api 工作正常,因为我可以使用 Postman 与它交互。客户端也启动了 运行 但是它现在正试图在错误的端口上调用 api:
http://localhost/api/...
如何将 api 请求重定向到 WAMP 上的端口 9000?
http://localhost:9000/api/...
代理功能不适用于制作。它仅用于开发。开发中的代理只是一种生产力功能。如果您在生产环境中从 API 服务器提供单页应用程序,但想在开发应用程序时使用 create-react-app
提供的开发服务器,这将很有用。然而代理只是:一个开发功能。它不适用于生产。
您可以阅读更多相关信息 here。如果您真的想指向一个端口,请将其添加到节点应用程序的 app.js
并考虑在该端口上启动服务器。
最后我决定删除代理设置并在请求前加上正确的 api 域。这样它在开发和生产上都能按预期工作:
private domain = "http://localhost:9000";
get(url: string, params?: any): Promise<any> {
return new Promise(async (resolve, reject) => {
try {
const result = await trackPromise(
axios.get(this.domain + url, { params: params })
);
return resolve(result.data);
} catch (error) {
return reject(error.response.data.message);
}
});
}
我有一个 React 应用程序向端口 9000 上 运行 的快速 api 服务器发出请求。 在开发中,我在我的 package.json 中使用了一个代理设置,它按预期工作:
"proxy": "http://localhost:9000/"
我现在已经构建并部署了 api 和客户端,并将它们都部署到 WAMP 上的 www 文件夹中。 api 工作正常,因为我可以使用 Postman 与它交互。客户端也启动了 运行 但是它现在正试图在错误的端口上调用 api:
http://localhost/api/...
如何将 api 请求重定向到 WAMP 上的端口 9000?
http://localhost:9000/api/...
代理功能不适用于制作。它仅用于开发。开发中的代理只是一种生产力功能。如果您在生产环境中从 API 服务器提供单页应用程序,但想在开发应用程序时使用 create-react-app
提供的开发服务器,这将很有用。然而代理只是:一个开发功能。它不适用于生产。
您可以阅读更多相关信息 here。如果您真的想指向一个端口,请将其添加到节点应用程序的 app.js
并考虑在该端口上启动服务器。
最后我决定删除代理设置并在请求前加上正确的 api 域。这样它在开发和生产上都能按预期工作:
private domain = "http://localhost:9000";
get(url: string, params?: any): Promise<any> {
return new Promise(async (resolve, reject) => {
try {
const result = await trackPromise(
axios.get(this.domain + url, { params: params })
);
return resolve(result.data);
} catch (error) {
return reject(error.response.data.message);
}
});
}