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
,并且有超过的书籍。这只是一个小例子来解释我的问题!谢谢你的链接。