api接口安全

本文探讨了API接口的安全问题,包括如何防止未授权访问、数据加密、使用安全协议等方面,旨在提高API接口的安全防护能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    api 接口安全 篇 

// sign time token
public function checkapi(){

   $sign= $_GET['sign']; // 客户端加密  md5($token.$time)

   $token = $_GET['token'];  // 客户端传递token

   $time = $_GET['time'];   // 客户端传递当前请求的时间

   if(!isset($_SESSION['user_id'])){

       echo  json_encode(['code'=>400,'msg'=>'请先登录']);exit;
   }

   if( !isset($_SESSION[$token]) || $_SESSION[$token]!=$_SESSION['user_id']){

       echo  json_encode(['code'=>400,'msg'=>'token 验证不通过']);exit;
   };
    
   if((time()-$time)>100){

       echo  json_encode(['code'=>400,'msg'=>'时间过得太久啦,请返回上一步重新请求']);exit;
   }

   if($sign!=md5($token.$time)){

       echo  json_encode(['code'=>400,'msg'=>'错误的签名']);exit;
   }


}

 


public function login(){

    $name = $_POST['name'];
    $password = $_POST['password'];
    $user_id=$this->_dologin($name,$password);
    if($user_id){
        // 登录成功
        $token = md5($user_id.rand(0,9999)); //生成token 保持唯一
        $_SESSION['user_id'] = $user_id;
       $_SESSION[$token] = $user_id;

        echo  json_encode(['code'=>200,'msg'=>'login success','token'=>$token]);exit; // 客户端保存token


    }else{

        // 登录失败
        echo  json_encode(['code'=>400,'msg'=>'login error']);exit; // 客户端保存token
    }
    //if()

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值