php 支付宝第三方登陆
1. 登录支付宝开放平台(蚂蚁金服开放平台)。https://open.alipay.com/
2. 进入开发者中心,创建应用,并申请应用上线。
3. 签约-获取会员信息功能。
4. 设置 授权回调路径 和 接口加签方式(选择RSA2(SHA256)密钥)
密钥 生成 需要下载支付宝提供的生成工具。 下载工具链接 : https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7386797.0.0.iZGFov&treeId=291&articleId=105971&docType=1
选择2048,生成后绑定到支付宝开发中心。
5. 下载支付宝SDK
https://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1
6. 获取code。
//php 代码
$appid = '你的APPID'; $redirect_uri = urlencode ( '你的回调网址' );
$url ="https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id={$appid}&scope=auth_userinfo&redirect_uri={$redirect_uri}";
header("Location:".$url);
//实例化操作
7. 获取access_token,获取用户信息 1 <?php header("Content-type:text/html;charset=utf-8");
//引入的SDK include "./alipay/AopSdk.php";
include "./alipay/aop/AopClient.php";
include "./alipay/aop/request/AlipaySystemOauthTokenRequest.php";
include "./alipay/aop/request/AlipayUserUserinfoShareRequest.php";
$code = $_GET['auth_code'];
//APPID $appid = '你的APPID';
//私钥 文件名(rsa_private_key.pem) $rsaPrivateKey = "很长的字符串";
//公钥 文件名 (rsa_public_key.pem) $alipayrsaPublicKey = "很长的字符串";
//初始化 $aop = new AopClient (); $aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$aop->appId = $appid; $aop->rsaPrivateKey = $rsaPrivateKey;
$aop->alipayrsaPublicKey = $alipayrsaPublicKey; $aop->apiVersion = '1.0';
$aop->signType = 'RSA2'; $aop->postCharset='UTF-8';
$aop->format='json';
//获取access_token $request = new AlipaySystemOauthTokenRequest ();
$request->setGrantType("authorization_code");
$request->setCode($code);
//这里传入 code $result = $aop->execute($request);
$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
$access_token = $result->$responseNode->access_token;
//获取用户信息 $request_a = new AlipayUserUserinfoShareRequest ();
$result_a = $aop->execute ($request_a,$access_token);
//这里传入获取的access_token $responseNode_a = str_replace(".", "_", $request_a->getApiMethodName()) . "_response";
$user_id = $result_a->$responseNode_a->user_id;
//用户唯一id $headimgurl = $result_a->$responseNode_a->avatar;
//用户头像 $nick_name = $result_a->$responseNode_a->nick_name; //用户昵称
var_dump($user_id); var_dump($headimgurl); var_dump($nick_name); die;
--------------------- 作者:Foreach_M 来源:CSDN 原文:https://blog.csdn.net/qq_35575940/article/details/64126525 版权声明:本文为博主原创文章,转载请附上博文链接!