【发布时间】:2020-02-16 10:35:36
【问题描述】:
我有 react app 和 nodejs api 服务器。 React 应用程序向 nodejs 服务器发出 fetch 请求。 React 应用和 nodejs 服务器部署在自己的容器中。
问题是我可以直接在浏览器中访问nodejs服务器,所以有没有办法“隐藏”nodejs后端服务器,只允许通过前端访问。
它应该像这样工作
- React 应用发出 fetch 请求
- nginx拦截请求并转发到nodejs服务器
- nodejs 处理请求
我认为可以使用 nginx 反向代理或 docker 网络或以某种方式完成...
【问题讨论】:
-
您希望通过这样做来实现什么?不管你添加了多少层间接,如果用户浏览器中的 React 应用最终可以访问 nodejs 服务器,那么用户想要的任何其他东西也可以。
-
拥有一个为构建的前端应用程序提供服务并代理后端服务器的 nginx 是非常常规的。您是否遇到了具体问题?