REST URL映射和PHP中的物理实现

我正在开始我的第一个基于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.

点赞