我正在开始我的第一个基于REST的应用程序,并有一个可能是微不足道的问题.
示例:资源“Book”:
1- GET www.domain.com/api/book/ – 获取所有书籍(正文中的可能参数)
2- GET www.domain.com/api/book/1234 – 获取具有ID = 1234的Book实例的详细信息(正文中没有参数)
3- GET获取www.domain.com/api/book/1234/author – 获取ID = 1234的书的作者
我想知道这些服务的物理服务器端实现.哪个PHP文件会存储相应的代码?是否有一些服务器配置要做?
我想我将有一个类似于这个的服务器文件夹结构:
API /书/
API /作家/
…和里面的一些php文件:
API /书/ file.php
API /作家/ file.php
我是否还应该有一个物理文件夹api / book / 1234,或者它是以某种方式假设由api / book /中的脚本处理?
谢谢和问候!
我应该在哪里编写代码的实现
最佳答案 一般来说
>您应该使用htaccess mod_rewite将所有请求重定向到一个文件.
>然后你应该用PHP解析URI.
>一个Controller类,用于根据已解析的参数决定要执行的操作.
例如:
www.domain.com/api/book/1234
你解析它:
action: book
id: 1234
因此,您使用参数1234 – showBook(1234)运行showBook()动作,这将执行所有其余工作.
但…
我建议对REST应用程序使用一些简单的框架.例如Slim Framework.