网站后端和移动服务层是否应该使用相同的API?

网站后端和移动服务层是否应该使用相同的API?,api,rest,Api,Rest,我正在做一个涉及网站的项目,完成后,移动应用程序(很可能会使用Phonegap或Sencha等跨平台工具构建) 整个应用程序是高度数据驱动的,所有这些都将存储在Web服务器上的MySQL数据库中。我知道我将为移动应用程序设置一个RESTAPI作为服务层,但我不确定的是,我是否也应该在主网站上使用这个API 在我开始这个项目之前,我需要知道这一点,因为如果我真的打算吃我自己的狗粮,那么API将是第一要务 如果有关系,API永远不会向第三方开发者公开。当然,为什么不呢?这意味着您将只有一个入口点进行

我正在做一个涉及网站的项目,完成后,移动应用程序(很可能会使用Phonegap或Sencha等跨平台工具构建)

整个应用程序是高度数据驱动的,所有这些都将存储在Web服务器上的MySQL数据库中。我知道我将为移动应用程序设置一个RESTAPI作为服务层,但我不确定的是,我是否也应该在主网站上使用这个API

在我开始这个项目之前,我需要知道这一点,因为如果我真的打算吃我自己的狗粮,那么API将是第一要务


如果有关系,API永远不会向第三方开发者公开。

当然,为什么不呢?这意味着您将只有一个入口点进行测试和监控,它遵循的是,如果您也使用它,它将鼓励更好的API设计。

是的,您应该为网站使用API。它简化了您的代码库并鼓励代码重用,因为您只处理一个API而不是两个(REST+MySQL)。此外,它使开发人员(包括您)的工作更轻松,因为一次只需要记住一组API调用

此外,将来您可能会使用HTML构建移动应用程序(可能使用PhoneGap,最近开源并重命名为)。如果您的网站使用RESTAPI,您可以更轻松地将web代码移植到HTML5 for mobile


吹毛求疵:这不是吃自己的狗粮的问题。从用户而不是开发人员的角度使用预发布代码,使查找bug变得更容易。

@PST:改为更能描述当前问题,谢谢。只处理和开发一个API听起来绝对“更干净”。