多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 请求地址 `https://www.lkdzs.cn/api/cet/query` # 请求方式 `get / post` # 请求参数 |参数|必填|说明| |-|-|-| |id|是|准考证号| |name|是|姓名| # 在线调试 ~~~[api] get:/api/cet/query *string:id=准考证号#必填 *string:name=姓名#必填 <<< success { "code": 100, "msg": "success", "date": {} } <<< error { "code": 105, "msg": "error" } ~~~ # 状态码 |代码|消息|备注 |-|-|- |100|success|查询成功 |101|missing id|缺少id |102|missing name|缺少name |103|timeout|连接超时 |104|fail|查询失败 |105|error|错误 # 源代码 ~~~ public function query() { // 接收数据 $id = input('id'); $name = urlencode(input('name')); if (empty($id)) { return json([ 'code' => 101, 'msg' => 'missing id', ]); } if (empty($name)) { return json([ 'code' => 102, 'msg' => 'missing name', ]); } // 请求地址 $url = "http://cache.neea.edu.cn/cet/query?data=CET4_203_DANGCI,{$id},{$name}"; // 初始化CURL $ch = curl_init($url); // 设置返回转移,存储返回结果 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 必选,设置来源,否则请求失败 curl_setopt($ch, CURLOPT_REFERER, 'ttp://cet.neea.edu.cn/'); // 执行抓取操作 $data = curl_exec($ch); // 判断是否连接超时 if ($data === false) { return json([ 'code' => '103', 'msg' => 'timeout', ]); } // 替换字符串 $replaceStr = [ "result.callback({", "});", "'", ]; $data = str_replace($replaceStr, "", $data); // 分割字符串 $data = explode(',', $data); // 保存数据 $map = array(); if (count($data) > 0) { foreach ($data as $item) { // 拆分键值对 $temp = explode(':', $item); $map[$temp[0]] = $temp[1]; } if (empty($map['error'])) { return json([ 'code' => 100, 'msg' => 'success', 'data' => $map, ]); } return json([ 'code' => 104, 'msg' => 'error', 'data' => $map, ]); } return json([ 'code' => 105, 'msg' => 'fail', ]); } ~~~