支付宝生活号支付

支付宝开放平台之第三方授权登录与获取用户信息

注意:支付宝公众号的主体是一个 pid  我们通过 pid和密码登录支付宝开放平台,创建一个应用,对应一个appid,在应用中设置回调域名,加密方式,RSA公私钥... ...,等审核通过应用上线以后就可以使用,程序中需要的是:appid、自己生成的RSA私钥(公钥上传到支付宝)、支付宝的公钥

1.登录支付宝开放平台

https://open.alipay.com/platform/home.htm

创建一个应用

 

设置完应用名称后根据情况设置回调域名,添加功能,自己生成公私钥,程序中保留私钥,上传自己生成的公钥到支付宝,并复制支付宝的公钥到程序中

到这我们还不能进行接口调试,因为我们的应用没有上线,APPID是无效的,大概等一天就审核通过并且上线,当时我只等了两个小时就上线了

在下面可以查看应用的appid和公私钥信息

 

 

2.构造授权url来获取auth_code(注意:此处的appid是创建应用的appid)

https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=12345678987&scope=auth_base&redirect_uri=http://paytest.card.com/paycenter-web/pay/jsapi?tokenId=1560081918059100,33,23

3. 回调页面得到链接如下,回调url中将包含参数auth_code

 

http://paytest.card.com/paycenter-web/pay/jsapi?tokenId=1560081918059100,33,23&app_id=123456987&source=alipay_wallet&scope=auth_base&auth_code=3909833a6edb4fbeace6e5eff18bXF45

4.根据auth_code获取user_id

   此处的appid、privateKey、publicKey是对应的应用的信息

 AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", APP_ID, APP_PRIVATE_KEY, "json", "UTF-8", ALIPAY_PUBLIC_KEY, "RSA2");
            AlipaySystemOauthTokenRequest alipayReq = new AlipaySystemOauthTokenRequest();
            alipayReq.setCode(code);
            alipayReq.setGrantType("authorization_code");
            try {
                AlipaySystemOauthTokenResponse oauthTokenResponse = alipayClient.execute(alipayReq);
                userId = oauthTokenResponse.getUserId();
                log.info("##获取userId:" + JSONObject.toJSONString(oauthTokenResponse));
            } catch (AlipayApiException e) {
                //处理异常
                log.info("##jsapi,服务窗获取userId出错!异常信息:{}", e);
            }
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值