Php RESTAPI:首先要区分请求\方法还是路径\信息?

Php RESTAPI:首先要区分请求\方法还是路径\信息?,php,rest,api,httprequest,pathinfo,Php,Rest,Api,Httprequest,Pathinfo,我正在开发一个小型的restapi,它是用PHP编写的 是否有最佳实践来决定脚本应该做什么? 我是否首先检查请求是否为GET,POST,PUT,DELETE,或者我是否首先检查路径信息 示例第一次检查路径信息: $method = $_SERVER['REQUEST_METHOD']; $request = explode('/', trim($_SERVER['PATH_INFO'],'/'))[0]; switch ($request) { case 'books': if (

我正在开发一个小型的
restapi
,它是用
PHP
编写的
是否有最佳实践来决定脚本应该做什么?
我是否首先检查请求是否为
GET
POST
PUT
DELETE
,或者我是否首先检查
路径信息

示例第一次检查路径信息:

$method = $_SERVER['REQUEST_METHOD'];
$request = explode('/', trim($_SERVER['PATH_INFO'],'/'))[0];
switch ($request) 
{
  case 'books':
    if ($method = 'GET') 
      {
        getbooks();
      } elseif ($method = 'POST')
      {
        postbooks();
      }
  break;
  default:
    include_once('error.php');
  break;
}
第一次检查请求\u方法示例:

$method = $_SERVER['REQUEST_METHOD'];
$request = explode('/', trim($_SERVER['PATH_INFO'],'/'))[0];
switch ($method) 
{
  case 'GET':
    if ($request = 'books') 
      {
        getbooks();
      } elseif ($request = 'user')
      {
        getuser();
      }
  break;
  default:
    include_once('error.php');
  break;
}
提前谢谢你


此外,API
将非常有限。大多数情况下,路径只有一个可能的
REQUEST\u方法`。

如果您希望保持它的简单易懂。那么我更喜欢下面的

$method = $_SERVER['REQUEST_METHOD'];
$request = explode('/', trim($_SERVER['PATH_INFO'],'/'))[0];

if($method == "GET" && $request == "books"){
    getBooks();
}elseif ($method == "POST" && $request == "books"){
    addBooks();
}elseif ($method == "PUT" && $request == "books"){
    updateBooks();
}elseif ($method == "DELETE" && $request == "books"){
    deleteBooks();
}

阅读一些博客和教程,如果你被卡住了,回来问更详细的问题。在php中,您可以随心所欲地做任何事情,但在这里,我们不会向大家解释最佳实践是什么,并且只为一种类型的read/write/提供RESTAPI<代码>书籍不是真正的RESTAPI。API应该做的不止这些。我使用
POST
GET
,并且有超过
的书籍。这只是一个小例子来解释我的问题!谢谢你的链接。