【发布时间】:2017-06-26 00:22:52
【问题描述】:
我是一名新的 MEAN 开发人员,我现在正在学习如何构建 API 等。我需要开发一个具有 Web 和移动版本的应用程序。现在我只知道如何为网络开发。我也可以在移动设备上使用相同的路由和 api 吗?或者我需要创建单独的 API?这种情况的最佳做法是什么?
谢谢
【问题讨论】:
标签: mysql angularjs node.js express mean-stack
我是一名新的 MEAN 开发人员,我现在正在学习如何构建 API 等。我需要开发一个具有 Web 和移动版本的应用程序。现在我只知道如何为网络开发。我也可以在移动设备上使用相同的路由和 api 吗?或者我需要创建单独的 API?这种情况的最佳做法是什么?
谢谢
【问题讨论】:
标签: mysql angularjs node.js express mean-stack
如果您想知道当时哪个客户端正在连接,我的建议是使用相同的 API,并可能在请求标头中包含一些 API 密钥(对于所有客户端 - Web、移动等都不同)请求(如果需要,可以限制流量、调试、禁止某些版本的应用程序等)。但是使用两个不同的 API(或者如果您想在未来添加更多客户端,可能会超过两个)将意味着您有很多代码重复和增加的复杂性,而所有特定的 API 都将与实现紧密耦合特定的客户。使用一个 API 意味着它需要通用且健壮。理想情况下,这可能意味着您并不真正关心开发了哪些新消费者,只要它们与您的 API 兼容即可。
我强烈推荐阅读 Stormpath 的文章和观看研讨会:
只需寻找描述设计 API 的文章和演讲,而不是描述特定 Stormpath 服务或产品的文章和演讲。
【讨论】: