上个月,我设计了我的第一个REST API,这是我学习php的工作,它是一个聊天通讯程序,用于提供对我依赖于文件夹和文件结构的不同API的访问,即URL指向服务器中的实际文件路径,并且该文件是完成其工作的完整脚本,因此使用API的应用程序要做的就是调用特定的URL并提供正确的输入,
最近,我读到有关路由器的信息,这个问题浮现在脑海,为什么我应该使用路由器,我真的需要它们吗?
到目前为止我的观点:
_无需使用路由器,API的设计和访问就很容易,Apache会处理路由(如果我没记错的话)。
_随着路由器的代码更加复杂,但是我可以在不使用实际脚本的情况下运行一些代码,因此可以更好地控制API访问等。
答案 0 :(得分:1)
虽然Yassine在其他地方指出了一个包含大量信息的答案,但在某些方面还是有点误导(和错误)。
路由器通常用作front controller architecture pattern的一部分。这会将所有传入的请求集中到特定的处理程序中,该处理程序通常会随后将请求通过路由器传递到特定的功能位。
这样做的好处是可以避免代码重复-专门用于处理会话管理,身份验证,授权和模板化。
考虑一下,例如:
SELECT
t1.evid
FROM
evinvite t1
LEFT JOIN evfeedback t2
ON t2.evid = t1.evid
AND userid ='".$uzer."'
AND status=9
INNER JOIN evgroups t3
ON t3.evid = t1.evid
AND t3.data >= DATE(NOW()) + INTERVAL -7 DAY
AND t3.data >= DATE(NOW()) + INTERVAL -7 DAY
WHERE
t2.evid IS NULL
虽然您可以将许多自包含脚本放到文件系统上,每个脚本都作为入口点,但每个脚本都需要实现上述逻辑。如果您决定开始使用Redis进行会话管理或更改模板,则需要更改每个脚本以适应新的行为。