我一直在关注后端和API一段时间。似乎有时开发人员会构建一个定期后端(比如像PHP这样的语言)来处理所有后端事务,有时开发人员会选择通过API构建他们的后端,然后使用他们自己的(可能还有其他)站点来从此API中提取数据。
我想知道这个:
假设我想使用像PHP这样的服务器脚本语言构建一个常规后端,我将使用它不仅渲染我的主网站,而且还允许我做其他服务器端脚本等。然后说我想要使用当前站点中的这些数据,并通过API调用使其可以访问我的另一个站点。是否可以在常规后端之上构建API?
如果答案是肯定的,那么实现这样的目标有多复杂?
您将拥有或已经使用哪些工具或设计策略(如果有)来实现这一目标?
答案 0 :(得分:2)
这是一个老问题,但由于我在这里,我也可以为任何想知道的人提供答案。 Joe询问服务器端Web API与常规服务器端代码。
是的,你可以有一个"常规"后端和API后端同时存在。如果你的后端是PHP,你可以重构和扩展你的代码来处理API请求。
就像帕特里克埃文斯所说,API是后端。如果您的后端PHP代码与数据库通信以操作或检索数据,那么您可以将此视为API事务。每当您的后端收到请求,评估请求的/操作并返回响应时,它基本上就像API一样。
让我们说你拥有example.com
,根目录中有一个index.php
文件 - 所以当用户在他们的浏览器中请求example.com时,会处理这个index.php文件,服务给他们。现在,您可以设置此index.php文件来处理常规页面请求(即php脚本返回由浏览器呈现的html模板)和API调用。这可以像你想要的那样复杂或简单。
处理此问题的最佳方法是为呈现主要网页和API调用指定不同的路径。您可以通过以下方式设置路线......
example.com/index.php?route=api&data=users
可以通过您的API代码处理'在index.php中返回包含数据库中所有用户列表的JSON响应,而example.com/index.php?route=home
只返回您网站的主页。