0

一段时间以来,我一直在研究后端和 API。似乎有时开发人员会构建一个常规后端(比如 PHP 之类的语言)来处理所有后端事务,有时开发人员会选择通过 API 构建他们的后端,然后使用他们自己的(可能还有其他)站点来从此 API 中提取数据。

我想知道这个:

假设我想使用像 PHP 这样的服务器脚本语言来构建一个常规后端,我不仅会用它来渲染我的主网站,还会允许我做其他服务器端脚本等。然后说我想用这个来自当前站点的数据,并通过 API 调用将其访问到我的另一个站点。是否可以在常规后端之上构建 API?

如果答案是肯定的,那么实现这样的事情有多复杂?

您将拥有或使用什么工具或设计策略(如果有)来实现这一目标?

4

1 回答 1

2

这是一个老问题,但既然我在这里,我不妨为任何想知道的人提供一个答案。Joe 询问的是服务器端 Web API 与常规服务器端代码的区别。

是的,您可以同时存在“常规”后端和 API 后端。如果你的后端是 PHP,你可以重构和扩展你的代码来处理 API 请求。

正如 Patrick Evans 所说,API 是后端。如果您的后端 PHP 代码与数据库通信以操作或检索数据,那么您可以将其视为 API 事务。每当您的后端收到请求、评估/执行该请求并返回响应时,它本质上就像一个 API。

假设您拥有,在根目录中example.com有一个文件 - 所以当用户在浏览器中请求 example.com 时,这个 index.php 文件将被处理并提供给他们。index.php现在,您可以设置这个 index.php 文件来处理常规页面请求(即 php 脚本返回由浏览器呈现的 html 模板)和 API 调用。这可以像您希望的那样复杂或简单。

处理此问题的最佳方法是分配不同的路由来呈现您的主网页和 API 调用。您可以通过以下方式设置路线...

example.com/index.php?route=api&data=users可以由 index.php 中的“API 代码”处理,以返回包含数据库中所有用户列表的 JSON 响应,而example.com/index.php?route=home只会返回您网站的主页。

于 2014-08-03T18:12:46.857 回答