支付宝公钥证书获取授权后用户信息
先获取支付宝公钥证书信息,详见文档: https://mp.csdn.net/mp_blog/creation/editor/118103200 通过证书信息获取access_token 信息。然后在通过access_token 获取授权用户信息 /* 初始化 **/ CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); /* 支付宝网关 **/ certAlipayRequest.setServerUrl("https://openapi.alipay.com/gateway.do"); /* 应用id,如何获取请参考:https://opensupport.alipay.com/support/helpcenter/190/201602493024 **/ certAlipayRequest.setAppId(AppId); /* 应用私钥, 如何获取请参考:https://opensupport.alipay.com/support/helpcenter/207/201602471154?ant_source=antsupport **/ certAlipayRequest.setPrivateKey(PrivateKey); /* 应用公钥证书路径,下载后保存位置的绝对路径 **/ certAlipayRequest.setCertPath("/appCertPublicKey_202.crt"); /* 支付宝公钥证书路径,下载后保存位置的绝对路径 **/ certAlipayRequest.setAlipayPublicCertPath("/alipayCertPublicKey_RSA2.crt"); /* 支付宝根证书路径,下载后保存位置的绝对路径 **/ certAlipayRequest.setRootCertPath("/alipayRootCert.crt"); /* 设置签名类型 **/ certAlipayRequest.setSignType("RSA2"); /* 设置请求格式,固定值json **/ certAlipayRequest.setFormat("json"); /* 设置编码格式 **/ certAlipayRequest.setCharset("UTF-8"); AlipayClient alipayClient = null; try {alipayClient = new DefaultAlipayClient(certAlipayRequest); } catch (AlipayApiException e1) {e1.printStackTrace(); }AlipaySystemOauthTokenRequest request = new AlipaySystemOauthTokenRequest(); logger.info("进入换取授权访问令牌获取支付宝昵称接口-------------request=" + request.toString()); request.setGrantType("authorization_code"); // auth_code 前端授权后得到的授权码 request.setCode(auth_code); String accessToken = null; try {AlipaySystemOauthTokenResponse response = alipayClient.certificateExecute(request);logger.info("进入换取授权访问令牌获取支付宝昵称接口-------------接口响应=" + response.toString());if (response.isSuccess()) {accessToken = response.getAccessToken();logger.info("调用成功:accessToken=" + accessToken);} else {logger.info("accessToken调用失败");} } catch (AlipayApiException e) {logger.error("支付宝换取授权访问令牌异常", e); }//通过 access_token 获取用户的 userId、昵称、头像等基础信息。 AlipayUserInfoShareRequest request1 = new AlipayUserInfoShareRequest(); JSONObject jsonObject = new JSONObject(); try {AlipayUserInfoShareResponse response = alipayClient.certificateExecute(request1, accessToken);if (response.isSuccess()) {String nickName = response.getNickName();String userId = response.getUserId();jsonObject.put("nickName", nickName);jsonObject.put("userId", userId);logger.info("通过 access_token 获取用户的信息接口调用成功:nickName=" + nickName + "=userId=" + userId);} else {logger.info("通过 access_token 获取用户的信息接口调用失败" + response);} } catch (AlipayApiException e) {logger.error("支付宝用户的基础信息异常", e); } return jsonObject;
支付宝公钥证书获取授权后用户信息相关推荐
- 微信授权-获取微信授权后用户信息
微信授权登陆: 我采用的是自定义的子菜单:登陆微信公众平台 第一步:用户同意授权.获取code 第二步:通过code换取网页授权access_token 详细步骤参考微信公众号平台 在页面地址输入授权 ...
- 钉钉授权时报获取钉钉用户信息失败,失败原因:访问ip不在白名单之中的解决办法
前言 公司里的一个钉钉h5应用项目,进入里需要钉钉授权,提示:钉钉授权时报获取钉钉用户信息失败,失败原因:访问ip不在白名单之中的解决办法,这个错误有一段时间了,后来在官方的文档里找到解决方法 钉钉官 ...
- 支付宝公钥证书方式提现
CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); //gateway:支付宝网关(固定)https://openapi.al ...
- PHP 接入支付宝公钥证书指南
为了简单快速的接入,在申请支付宝商户后,我们可通过沙箱应用进行测试 准备证书 首先登录支付宝开放平台沙箱环境:开放平台-沙箱环境 在 RSA2(SHA256)密钥 设置中的加签模式选择 公钥证书,然后 ...
- 支付宝公钥证书支付示例
支付宝公钥证书支付示例 支付宝平台仅提供了普通公钥签名方式的电脑支付DEMO(下载),并未提供使用公钥证书的电脑支付DEMO,在阅读了老版的SDK之后,自己编写了这个DEMO. 效果图 支付测试页面 ...
- 微信公众号开发:获取openId和用户信息(完整版)
注:之前总结怎么进行本地公众号开发调试,时间一长忘记开发配置却忘了,所以这里记录一下公众号开发配置,方便快速上手. 目录 开发前服务器配置 网页授权获取用户基本信息 snsapi_base snsap ...
- 微信小程序 - 登录获取openid和用户信息(适配getUserProfile)
GitHub Demo 地址: jh-weapp-demo 实现一些常用效果.封装通用组件和工具类 小程序码 微信小程序中如果需要使用微信的用户信息建立自己的用户体系,需拿到唯一标识openid,然后 ...
- 支付宝公钥证书模式完整流程(代码)
支付接口接入 String url=profileHttpUrl+"/aliPay/notifyApp";Orders orders = ordersJpaRepository.g ...
- tp框架接入支付宝公钥证书支付+回调
了解支付宝支付之前先要了解电子商务,电子商务就是,把在先下购物,放到互联网上,人们可以通过网页或者手机直接的看到商品. 电子商务的模式分为很多, B2B(企业对企业,例如阿里巴巴) B2C (企业对个 ...
最新文章
- linux安装ActiveMQ
- iphone尺寸_iPhone折叠机概念图:屏幕双打孔,iPhone折叠机有多优秀!
- Redis(七)分布式锁
- JAVA面试常考系列六
- 【Linux操作系统分析】设备驱动处理流程
- 1069. 微博转发抽奖(20)
- Java ClassLoader getParent()方法与示例
- 用Swift完成不同View Controller之间的切换
- 如何让脸部变得越来越白?
- es6 Map,Set 和 WeakMap,WeakSet
- SWT里Slider和Scale的区别
- origin拟合曲线
- [易飞]关于应付账款明细帐余额余总账不平解决方案
- python中sorted函数逆序_python中sorted函数
- 计算机考研专业课靠什么,2021计算机考研:这4个科目 各科该如何备考?
- python PyPDF2处理PDF文件
- PMSM FOC 滑膜观测器 SMO 算法
- 自动化收取蚂蚁森林能量(无须连接电脑)
- Ubuntu 报错 WARNING:`gateway4` has been deprecated, use default routes instead... 解决方案
- 同IP反查域名的原理