我正在参与一个涉及 JavaScript SPA的项目,该项目提供服务并旨在通过 REST API 与我们的一台服务器进行交互。最初,我建议将这两个实体作为两个单独的项目进行工作;具体来说,我提出以下
- 用户通过
www.myservice.org
地址访问 Web 应用 - Web 应用程序联系
api.myservice.org
服务以进行 REST 交互
但我立即面临拒绝。有人告诉我,位于 的 Web 应用程序www.myservice.org
应该通过类似的方式联系 REST 服务器,www.myservice.org/api
因为否则会带来安全威胁。我没有说这是一个坏主意,但我坚持将 API 服务器与 SPA 服务分开,原因如下
- 缩放
- 关注点分离
- 更轻松的代码管理
我更像是一名开发人员,而不是系统管理员和安全专家,所以我无法及时回复他们的拒绝。为什么拥有两个api.myservice.org
和www.myservice.org
服务器代表安全问题?我被模糊地告知了跨站点脚本,但即便如此,我的推理也不是很清楚。