美文网首页
支付宝生活号获取会员信息报token无效问题排查

支付宝生活号获取会员信息报token无效问题排查

作者: 子晓聊技术 | 来源:发表于2017-06-07 22:59 被阅读0次

    支付宝生活号获取会员信息,详细文档见https://fuwu.alipay.com/platform/doc.htm#c0503

    简单说一下开发步骤:

    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,(把jar包打入maven仓库,括号里非必须)

    https://doc.open.alipay.com/doc2/detail?treeId=54&articleId=103419&docType=1

    6.  下载服务窗Demo

    https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.5l3Mkk&treeId=54&articleId=104507&docType=1


    我用的JAVA版本,其中DEMO里有这么一段坑爹的代码

    使用DEMO测试,一直报token无效,找了很久终于找到问题所在,

    标红的代码存在问题,修改后的代码如下:

    AlipayUserInfoShareRequest userinfoShareRequest =newAlipayUserInfoShareRequest();

    AlipayUserInfoShareResponse userinfoShareResponse = alipayClient.execute(

    userinfoShareRequest,oauthTokenResponse.getAccessToken());

    通过2处代码比较可以发现,是不是支付宝的程序猿晚上加班太晚,多写了个User

    如果该问题还未解决,查看以下是否正确

    1、如果只是网页获取用户OpenId,URL拼接规则,https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=APPID&auth_skip=false&scope=auth_base&redirect_uri=ENCODED_URL

    如果是获取用户头像、昵称等详细信息,URL拼接规则https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=auth_user&redirect_uri=ENCODED_URL

    不管是哪一种,重定向的URL需要encode

    2、检查是否开启服务窗功能、 获取会员信息功能

    3、检查签名方式,文档里写只支持RSA加密方式,其实RSA,RSA2都是支持的。

    题外话:记一个生活号的问题, 生活号内部可能出现打不开http协议的网页,是因为支付宝生活号对 移动运营商广告拦截的原因, 配置成https协议就可以避免这个问题

    相关文章

      网友评论

          本文标题:支付宝生活号获取会员信息报token无效问题排查

          本文链接:https://www.haomeiwen.com/subject/nhzafxtx.html