1.第一步在蚂蚁开放平台注册申请应用上线
2.下载支付宝秘钥生成器,生成秘钥(加在代码里面)和公钥(填写到蚂蚁开放平台)下载sdk放到extend文件夹里面
3.引用SDK
//头部加上 use think\Loader; header("Content-type:text/html;charset=utf-8"); Loader::import('alipay.AopSdk', EXTEND_PATH);
4.访问方法拼写授权地址
$encoded_url = 回调地址; $appid = APPID; $code_url = "https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=$appid&scope=auth_user&redirect_uri=".urlencode($encoded_url);//获取auth_code $this->redirect($code_url);
5.获取用户信息
$code = $_GET['auth_code']; //APPID $appid = '2018092761533618'; //应用私钥 文件名(rsa_private_key.pem) $rsaPrivateKey = "MIIEowIBAAKCAQEAtS+kh5w5YLKh9AxsVxeUP7x6/Ty2glEDi1hk2KbOhkxEVnXk22mGE+CPCSAIc36JjK+Dbj+3cMwphlkXMkmjPd/KXQKcOOcrQxqg1CnJEaW5VO5oFv8e87lyFCDyyPCvr3+0ARlY6F6mcMZVijpZfo14HNdMDq7bzYwianwVqyh8H35ZnNJwVIuXddF3d37dORnUSBJR2GV0GYaWwBSHCHgsVTjuZZRLeLhM9unrPGhQSyOVY9SL699qZDbcFx/4EVdSivecbqcZPC+2X2CqUGnHqkNYLLDg6GXNOr4cUtj6YpCXfX0bZOHu4iyfMkPMYpF665CU0bjh8TTtZA3pzwIDAQABAoIBABzJEO6ql0MRnkFTp/K+QENQAooxFx3lGRcOWBdDiRQ1EbZazJ0/Spnl11OvzyfqNpgvWkYtwUseZIp/pPvMTy8JWvEj9QXlVC45EMwkR1mSZrtjlQ3yQkyebc1c3rWl54OOWl7CVCm2v+Ky3+wyEP3WI/sRCXhbt3gUh3M7e4XRiCdkp2zDGtXPvv/j6+27WZZX8aTQkxvDIvabWmtXQe2ubIx8MWevG2ozexh7cTVvwHdRyQ6oLautdw5aHcYte0w36PuLjM6+QvG6rRCymzrxbqSyIREsYLcZDMG+8AiKdFtokZ0Adj9xR/vUVRBoFT21kh5cJhS7Vi0dkYt7suECgYEA6ABkG3JGU2jwSHf89gzYbcAUPeAZGc7LkPF6Fkd+DYaYYQr2QK60NcvsBLjplCOfBVkdaMtxrjmpl7HpkaJxqFUd7qoxJFofDIVrN4CXKhcj9rLJIM3zEYOpYk7TXWysjLXYmBJDnH7izqzWbJxkGOM+NspEe936Yry5UXKAVvMCgYEAx+2dEyc9WJhXO1SyraHwgh4DIQ7p+hHnz3Gnkk3dDq2hYvg4Tjiuo0OXu4HMkUwZsdcep1Kgha2b8IAdlsRDRcKi41m69COaAYCi4+OdPvsZt6ORSOSn7jB4RBqKnauYZHuFnk+JqvXwx/Z8CiVvDVfqufPnLnf8xy9G1EVp0LUCgYEApqcpQgH7fI0kFZqDjqe5jFTu9WeWAFDpL8wWfAyNAuBNc2AxdlNIxmAewWGnAC/6WhgipRWHKrTnGz3E30WGSXojDz8YH9nQ9eidFPh9HdITlnHlQnhOg6VFNoYTFMgsxsMVvF9aS/9lozrKqKhKywnptefj++p/ow+YO2Z5xHsCgYA9xyvBTl/Db5eM6tgnlSG3Y0S+Q1iDgGLsFAeeytajAX4cEe18JkG4i1togmxO/X/3Fy0OsRaPGB1WjJAYFV9gQAuLSx/c7t9Y1YH//0aIvpisyStMpfNKQ8n16Wmp3OtDKXQZfiRhIowbjgu4KucM7XzHpxlpn4QJnI87apOO/QKBgFqhHqaUhAUEsHaXhBY9WyMhC0FS7d42rkVOcnrRXP3ZN4Erg6XIId+BmKmifZDySDFFqfTm3QWH8QpP5WSPc8sOZuawaxuqOLGtTaNp9ycl42akDUSYjXHP9addVQgkYfhLPM6NTGTMQfF8ITeo9io4ayEBlFstJtzYBKBVZbc2"; //支付宝公钥 文件名 (rsa_public_key.pem) $alipayrsaPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2AjPQRTsPBjgthS41/qotxSbsCFItiFZ+j1lZUy7WlI+DdM4H+KKRJFYY3IjD2ouWYKTbFadmvxit/X+v+1gGYc/L67IGX0jO9N9JMvRANQNarEtHCON5SWPu0vQ40vIaVHRDG5fKXBzczTnAi4To7kzE+AAg283HbPGuuwtKPhee1KkmOHrHhTzfrdyiyHwOHX379GlHggdkEGz+PO0YQkpGeBuKYFwnU9yQRjqCn2DRnLC7V2huMG9IgEF8A9uodQUnBo4CdlD+wIPhK262bkOkKj6cI71MxQNSMp41JbPEB4Edb2p17vLcWL5aHy7xlKDjpAxYle1t0n6/1UUNwIDAQAB"; //初始化 $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); $result = $aop->execute($request); $access_token = $result->alipay_system_oauth_token_response->access_token; //获取用户信息 $request_a = new \AlipayUserinfoShareRequest(); $result_a = $aop->execute ($request_a,'authusrB4d426f65fc0f4a1299ac3e6cc48ffX00'); //这里传入获取的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); var_dump($result_a->$responseNode_a); die;