7

如果一个网站有一个使用 API 的面向公众的前端,并且还有一个用于具有更强大角色的用户也使用 API 的后端,那么站点的两个部分应该使用相同的 API 还是不同的 API(例如:/api/v1 /resourceName 与 /api/admin/resourceName)?

4

1 回答 1

10

这真的取决于你的情况。如果您的私有端点绝对必须保持私有,那么单独的 API 是唯一绝对的解决方案。一般来说,这似乎是矫枉过正。对于大多数情况,我建议维护一个 API,并从一开始就考虑到安全性来设计您的私有端点。

独立的 API

  • 您必须维护两个代码库,或者至少将您的私有 API 的一部分移植到公共系统。
  • 您必须维护两个生产 API 系统。
  • 更好的安全性:公共客户端将无法访问您 API 上的私有内部资源,即使用户密钥/密码等被破坏,或者您面向公众的 API 处理安全性的方式存在错误。

相同的 API

  • 一个代码库和一个服务器。
  • 安全将更加重要。您必须确保公共客户端无法访问内部资源。安全漏洞或对私有端点安全性的疏忽可能会导致严重问题。
于 2013-07-27T01:53:56.573 回答