我希望能够从数据库自动生成Web API。我可以轻松使用SQL查询数据库,但显然这对于公共API来说不够好。我也可以手动编写服务器端代码,但由于数据库相当大,这将需要很长时间。此外,手动编写会是一项非常机械和重复的任务,因此我认为程序可以替代我完成它。
例如,假设我的数据库中有一个名为“Announcements”的表。我正在寻找一种方法(给定该数据库表)自动生成允许他人创建新公告的服务器端代码,并要求正确的字段。如果手动完成,这可能看起来像一个名为“create_announcement.php”的PHP文件,其中包含数据库中存在的所有字段,如公告标题、正文和作者。当然,这也可以通过遵循某些设计模型(如REST)以更清晰的方式完成,但这只是作为示例。
我考虑的其他事情包括:
- 某种形式的身份验证。例如,如果用户想要删除公告,则应要求其进行“登录”。我不确定这在这里如何实现。 - 添加逻辑的某种方式。如果我可以生成通过HTTP访问数据库的API(如我上面所描述的),则API将不会意识到某些特定性。假设公告资源应包括必须在今天之后的日期。我需要一种在代码中表达它的方法。 - 如果解决方案能够遵循某些设计模型,以便更容易从不同的客户端访问,那将是理想的。
那么我应该查找哪些工具?当面临这个问题时,人们通常采取什么样的一般方法?
例如,假设我的数据库中有一个名为“Announcements”的表。我正在寻找一种方法(给定该数据库表)自动生成允许他人创建新公告的服务器端代码,并要求正确的字段。如果手动完成,这可能看起来像一个名为“create_announcement.php”的PHP文件,其中包含数据库中存在的所有字段,如公告标题、正文和作者。当然,这也可以通过遵循某些设计模型(如REST)以更清晰的方式完成,但这只是作为示例。
我考虑的其他事情包括:
- 某种形式的身份验证。例如,如果用户想要删除公告,则应要求其进行“登录”。我不确定这在这里如何实现。 - 添加逻辑的某种方式。如果我可以生成通过HTTP访问数据库的API(如我上面所描述的),则API将不会意识到某些特定性。假设公告资源应包括必须在今天之后的日期。我需要一种在代码中表达它的方法。 - 如果解决方案能够遵循某些设计模型,以便更容易从不同的客户端访问,那将是理想的。
那么我应该查找哪些工具?当面临这个问题时,人们通常采取什么样的一般方法?