c# 支付宝生活号 获取用户信息,不使用dome

在蚂蚁开放平台注册申请应用上线

如果你只想看代码,直接跳至最后一步

申请过程就不多说了,申请完成后是 已上线 状态就ok了
在这里插入图片描述

下载支付宝开放平台开发助手,生成秘钥

点到生成密匙页面,根据自己需求选择密匙长度和密匙格式,再点击生成密匙即可,应用私匙和应用公匙一定要保存后,后面会用到
在这里插入图片描述
到支付宝开放平台的生活号 应用信息页面配置 密匙信息
在这里插入图片描述
配置接口加签方式,将刚才获取到的应用公匙填写进去,会返回给你支付宝公匙,将此公匙也好好保存,后面会用到
在这里插入图片描述

开始写代码,获取用户信息

接下来基本步骤如下图
在这里插入图片描述

拼接url,引导用户访问授权页面

拼接好的url:
https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id="你的appid"&scope=auth_user&redirect_uri=“你的业务页面回调地址”

参数 redirect_uri 需要注意的是,回调域名必须同开放平台设置域名一致
在这里插入图片描述

还有一个参数需要注意 scope ,这个参数有两个值,你可以根据你的需要来选择:

auth_base:以auth_base为scope发起的网页授权,是用来获取进入页面的用户的userId的,并且是***静默授权***并自动跳转到回调页的。用户感知的就是直接进入了回调页(通常是业务页面)。
auth_user:以auth_user为scope发起的网页授权,是用来获取用户的基本信息的(比如头像、昵称等)。但这种授权需要用户手动同意,用户同意后,就可在授权后获取到该用户的基本信息。

获取auth_code

授权通过后,会跳转至你的回调页面,此时在你回调页面会添加几个参数,包括auth_code、app_id、scope等,可以通过将这些参数进行保存

获取auth_code
code = Request["auth_code"].ToString();

使用auth_code换取接口access_token及用户userId

注意:sign值获取在最下方代码中

接口 : https://openapi.alipay.com/gateway.do
请求方式:post
参数:
在这里插入图片描述
调用方式:(需要注意的是所有参数都必须先进行一下加密,加密方式由上方charset参数决定,这个参数写什么方式,那么你就需要用什么方式加密,我用的是utf-8)
示例:

        ali_appid = HttpUtility.UrlEncode(你的appid, Encoding.UTF8);
        string grant_type = HttpUtility.UrlEncode("authorization_code", Encoding.UTF8);  //值为authorization_code时,代表用code换取;值为refresh_token时,代表用refresh_token换取
        string charset = HttpUtility.UrlEncode("UTF-8", Encoding.UTF8);  //加密方式
        string code = HttpUtility.UrlEncode(auth_code, Encoding.UTF8); //上一步获取的auth_code
        string method = HttpUtility.UrlEncode("alipay.system.oauth.token", Encoding.UTF8); //接口名称
        string sign_type = HttpUtility.UrlEncode("RSA2", Encoding.UTF8); //商户生成签名字符串所使用的签名算法类型
        string timestamp = HttpUtility.UrlEncode(填写当前时间, Encoding.UTF8); //当前时间 ,格式"yyyy-MM-dd HH:mm:ss"
        string version = HttpUtility.UrlEncode("1.0", Encoding.UTF8); //调用的接口版本,固定为:1.0
        signvalue = HttpUtility.UrlE
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值