我正在启动 Web 项目,该项目应该非常灵活和模块化,并且将来肯定会增长很多。当我们计划向其他开发人员提供 api 时,我开始认为将所有方法实现为 api 并提供远程和内部使用它们的功能可能是一个好主意。
例如,假设我们要提取所有注册用户。所以我们在 api 中设计方法,比如 get_all_users,它可以通过 REST 或内部调用获得。问题是我无法弄清楚如何区分访问与内部使用和远程使用,因为我还应该考虑内部调用的速度、代码重用和检查用户权限(用于 api 访问的密钥等)。最佳实践是什么?如何组织这样的 API?