TP5结构-对接APP的接口框架模板

<?php
/*
thinkphp5对接APP的接口框架模板_面向对象语言通用接口框架

接口写法
1、请求参数post类型
2、接口类型url  
http://域名+配置向导+模块+类+对外函数(public方法)?protected=被保护函数(函数执行实体)
http://域名+配置向导+模块+类+对外函数(public方法)?令牌=加密字符串&protected=被保护函数(函数执行实体)
如:
http://www.ddletao.com/public.php/api/notoken/index?protected=login
http://www.ddletao.com/public.php/api/token/index?Token=****&protected=add
3、返回数据结构
['code'=>错误代码
'data'=>返回值
'msg'=>提示语
]


接口框架模板


创建无令牌接口文件notoken.php
创建基类base.php(用于验证令牌)
创建令牌接口文件token.php,继承基类base.php
创建通用函数common.php(主要用于返回数据及格式)
*/
// notoken.php结构
class notoken extends Controller
{
    public function index()
    {
        $response = []; 
        switch(input('protected')){
            case 'login'://登录,将令牌保存本地,作为登录后操作的凭证
                $response = $this->login();
                break;
                .....
                .....
            default :
                $response=returnCode(202,'');
                break;
        }
        if(count($response)==0){
            $response=returnCode(203,'');
        }
        return json($response);//此处将数据打包成json数据 返回给app
    }
    protected function login()
    {
        if(request()->isPost()){
            /*
                验证参数正确性
            */
            $data='hello world!';
            return returnCode(200,$data);//正确
        }else{
            return returnCode(201,'');//未得到请求
        }
    }
    .....
    .....
}

// base.php结构
class base extends Controller
{
    public function check(){
        
        $token=input('token');
        $array=session('token');
        if(($token=="")||($array['token']!=$token)){
            return false; //令牌错误
        }
        return true;
    }
}


// token.php结构
class token extends Base
{
     public function index()
    {
        switch(input('protected')){
            case 'add'://添加
                $response = $this->add();
                break;
                .....
                .....
            default :
                $response=returnCode(202,'');
                break;
        }
        if(count($response)==0){
            $response=returnCode(203,'');
        }
        return json($response);//此处将数据打包成json数据 返回给app
    }
}

// common.php结构 公用函数

//返回错误代码  公用函数
    function returnCode($code,$data){
        
        $response['code']=$code;
        $response['data']=$data;
        switch($code){
            case '200':
                $response['msg']="成功"; 
                break;
            case '201':
                $response['msg']="请求类型错误"; 
                break;
            case '202':
                $response['msg']="非法访问"; 
                break;
                .....
                .....
            default :
                $response['msg']="返回代码不存在";
                break;
        }       
        return $response;
    }
?>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容