假设,我们现在有一个API接口,地址如下:
http://api.junphp.com/test/v1/zoos
我们现在需要发送一个POST请求,传递参数ID过去,
请求这个API让其DELETE对应的参数。
同时这个接口需要sign验签与access_token凭证才能通过请求。
下面我们就来完成这样的一个实例:
1、先在/test/目录中,新建一个index.php文件,并写入以下代码:
<?php# 1. 初始化$curl = curl_init();# 2. 设置请求信息# 设置API请求地址curl_setopt($curl, CURLOPT_URL, 'http://127.0.0.1/test/zoos.php');# 设置请求HTTP动词curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');# 设置请求类型为POSTcurl_setopt($curl, CURLOPT_POST, true);# 设置请求参数curl_setopt($curl, CURLOPT_POSTFIELDS, ['id' => 1]);# 设置自定义请求头内容$header = [];$header[] = 'Access-token:zxc'; // 设置凭证$header[] = 'Sign:123'; // 设置签名$header[] = 'Content-type:application/json'; // 设置数据提交类型$header[] = 'Accept:application/json';curl_setopt($curl, CURLOPT_HTTPHEADER, $header);# 关闭请求成功后自动输出的设置curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);# 关闭回调内容中带请求头信息curl_setopt($curl, CURLOPT_HEADER, false);# 设置最大请求等待时间为60秒curl_setopt($curl, CURLOPT_TIMEOUT, 60);# 3. 执行请求$res = curl_exec($curl);# 4. 是否请求成功if ($res === false) {echo 'API请求失败,原因:'.curl_error($curl);}# 5. 释放curl句柄curl_close($curl);# 6. 查看回调结果echo $res;
2、再在/test/目录中,新建一个zoos.php文件,并写入以下代码:
<?phpecho '<pre>';var_dump($_SERVER);
运行index.php文件,查看案例结果。
在$_SERVER超全局变量中,我们可以看出REQUEST_METHOD节点是用于记录HTTP动词的。
