php 中接入极光一键登录相关

1:首先是由安卓端 或者ios  在项目中集成极光相关关sdk   ,由他们获取sim 卡信息,调取极光接口(极光文档

   换取 login_token 信息传给服务端

2:服务端接收相关值,调取极光相关接口(极光文档),解析login_toekn 。解析成功即可根据对应项目需求逻辑 进行接入。

解析失败,返回对应极光 错误信息

此处需要注意鉴权相关 下方 是我的代码相关

public function getR(Request $request)
{
    $data['loginToken']=$request->input('loginToken');
    $data['exID']=$request->input('exID',8000);
    $code = $request->input('code');
    $source = $request->input('source');
    $registration_id = $request->input('registration_id');
    $device_model = $request->input('device_model');
    if(empty( $data['loginToken'])) return parent::_jsonMsg(4001, Config::get('code.4001'));
    $data1 =str_replace(" ","+",json_encode($data)) ;
    $url = 'https://api.verification.jpush.cn/v1/web/loginTokenVerify';
    $res = $this->postCurl($url,$data1);        //此处是关于第三方的post请求
    Log::info(['极光验证'=>$res]);
    if($res['code'] != 8000){
        return parent::_jsonMsg(11056, Config::get('code.11056'));
    }

    $data2= RsaDePushCode($res['phone']); // 此处是ios端 进行了rsa加密,所以服务端要用对应私钥进行解密手机号

    if(!$data2) return false;
    $request->offsetSet('ub_cellphone', $data2);
   return $this->codeLogin($request);    //此处是调用了登出注册接口 处理相关业务逻辑 


}
public function postCurl($url,$data)
{
    //  $appKey = '自己的appkey';
    //  $masterSecret = '自己masterSecret';
    //  $base = base64_encode("{$appKey}:{$masterSecret}");
    $base=" 这里是经过base64_encode 加密过得 appkey和 对应masterSecret";
    $add = "Authorization: Basic " . $base;
    $headerArray =array("Content-type:application/json",$add);
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    $result = json_decode($output,true);
    return $result;
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值