1.在小程序端获取 auth_code,目的是获取用户授权码

2.把第一步获取的授权码 auth_code 传到后台接口

3.后台拿到这个 auth_code 之后,需要调用支付宝的授权平台,从而获取用户的唯一 token 以及 支付宝的userid,都是唯一的,调用的接口为 [alipay.system.oauth.token]。获取到userid后,判断一下这个userid是否在我们自己的数据库中存在,如果存在,直接获取信息,并且直接返回用户对象到前台;如果不存在,则需要从支付宝授权平台再一次去获取支付宝用户的信息。

public function aliLogin(){$code = $this->request->param('code');if(empty($code)){return $this->error('缺少登录参数');}// 引用支付宝vendor('.alipayapp.aop.AopClient');vendor('.alipayapp.aop.request.AlipaySystemOauthTokenRequest');vendor('.alipayapp.aop.request.AlipayUserInfoShareRequest');$aop = new \AopClient();$data = Payment::read(12, 1, true); // 获取后台支付宝配置信息$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$aop->appId = $data['pay_config']['app_id'];$aop->rsaPrivateKey = $data['pay_config']['private_key'];$aop->alipayrsaPublicKey = $data['pay_config']['ali_public_key'];$aop->apiVersion = '1.0';$aop->signType = 'RSA2';$aop->postCharset='utf-8';$aop->format='json';$request = new \AlipaySystemOauthTokenRequest();$request->setGrantType("authorization_code");$request->setCode($code);//$request->setRefreshToken("201208134b203fe6c11548bcabd8da5bb087a83b");$result = $aop->execute($request);$result = (new \think\Collection($result))->toArray();// 拿到的支付宝user_id$ali_user_id = $result['alipay_system_oauth_token_response']->user_id ?? '';if (!$ali_user_id) {return $this->error('code无效');}
}

支付宝小程序登录 -tp相关推荐

  1. 喵喵的支付宝小程序登录

    B站地址https://www.bilibili.com/read/cv5917135 1.注册 首先第一步你需要支付宝账号,其中如果你想拥有支付宝小程序支付功能,需要你的账户类型是企业. 查看步骤: ...

  2. (JAVA)支付宝小程序登录相关(authToken获取用户唯一userId、encryptedData解密手机号)

    前言: 最近公司做一个支付宝小程序项目,用支付宝userId做唯一用户id,后台encryptedData解密出用户支付宝绑定的手机号信息,其中 参数:authToken和encryptedData均 ...

  3. golang 获取支付宝小程序用户手机号、登录授权、AES解密

    目前支付宝官方的api没有关于golang语言的sdk,最近在开发支付宝小程序登录,发现支付宝对于敏感信息会进行AES加密 ,例如获取用户手机号,会先由前端获取手机号密文.传给服务端,进行解密,从而获 ...

  4. 小程序登录 之 支付宝授权

    众所周知啊,微信小程序是可以通过微信本身授权后再登录,平台可以拿到微信用的的账号相关信息,然后保存到数据库中,那么同理在支付宝小程序开发过程中,登录功能的设计也可以如此 上图是官方提供的时序图,具体看 ...

  5. 微信小程序公众号支付宝小程序的登录授权、支付、分享、人脸识别人脸核身

    文章目录 一.微信小程序 1. 获取信息用户信息 2.支付 3.分享 4. 腾讯云小程序人脸核身 二.微信公众号 1.获取信息用户信息 2.支付 3. 分享(普通分享) 4.分享(vue单页面 配置分 ...

  6. 支付宝小程序授权登录 (Java 后台篇)

    支付宝小程序授权登录 (Java 后台篇) 开始 : 实现支付宝小程序授权登录功能, 本文主要是介绍支付宝小程序授权登录流程,与关键登录与处理代码. 流程 : 关键代码 : 1.获取用户信息 /*** ...

  7. 支付宝小程序获取用户授权并进行认证登录流程(前端)

    1.支付宝小程序获取用户授权并进行认证登录流程 1.1申请获取用户信息能力     登录功能做之前要先沟通好客户的需求,支付宝小程序获取用户授权调用相应的接口之前要先获得对应的能力.如果需要获取身份证 ...

  8. pyqt5点击按钮后关联程序一直运行指导再次点击按钮_揭秘支付宝小程序调试方法...

    本文摘自 https://rax.js.org 本地 IDE 调试 IDE 模拟器中模拟了大部分的真机 API,并且配有调试工具,建议先在模拟器中完成基础功能.样式的调试,然后在真机上验证和调试,当然 ...

  9. 支付宝小程序面向个人开放了!我将以一个 Demo 为例讲解整个流程。

    Hello,我是犯迷糊的小 K.目前是 ifanr 的一只前端攻城狮,同时也是知晓云团队的一员. 3 月伊始,ifanr 旗下品牌--知晓云 3.0 版本正式上线.此次更新得到业内许多开发者的密切关注 ...

  10. 用户超5亿,三年投10亿,开发者如何抢滩支付宝小程序蓝海?

    2018 年,被称为小程序正式搭建互联网生态圈的一年. 各大互联网巨头纷纷围猎小程序,意图用小程序丰富自己的服务形态. 而随着入局者越来越多,竞争愈发激烈.虽有"小程序红利期将持续 5 年& ...

最新文章

  1. 神经网络基础知识梳理
  2. IntelliJ IDEA 关闭多余项目
  3. Spring 5 新增全新的reactive web框架:webflux
  4. 1虚拟机下U盘或磁盘挂载,Ubuntu下的网络配置,图形化界面和命令界面之间的切换,软件源配置
  5. arcgis9.2的安装方法
  6. python模块下载过程_常用的python模块及安装方法
  7. hdu3652(数位dp)
  8. html5数学公式编辑器,数学公式编辑器的使用技巧
  9. Win10 CMD命令大全与超好用的快捷键
  10. 观 小楼老师Axure /得
  11. linux系统清理磁盘空间
  12. 【思考】windows补丁提权的疑问
  13. 萬惡淫為首,百善孝為先
  14. 大数据可视化技术应用学习目标与复习小结
  15. WHT20无线温湿度传感器 STM8S单片机
  16. 【算法学习笔记】二分查找法
  17. Dr.Elephant的安装及使用
  18. java毕业设计——基于Java+Bootstrap+Mysql的电影评论网站设计与实现(毕业论文+程序源码)——电影评论网站
  19. 代码随想录算法训练营第二天 | LeetCode977有序数组的平方 、209长度最小的子数组、 59.螺旋矩阵II
  20. 读计算机专业选北大还是清华,选清华还是选北大?

热门文章

  1. 区块链火了 市场热度最么高
  2. 网页QQ客服聊天功能
  3. uniapp 发布h5后报错,连接服务器超时,点击屏幕重试
  4. angular实现国密算法sm2、sm3和sm4的ts版,基于sm-crypto库实现,前后端实现
  5. 买一包旺仔牛奶糖奖励自己
  6. Python 解析式
  7. 关于Python列表解析式以及初始化指定size列表
  8. Hadoop系列-MapReduce设计思想与原理机制(九)
  9. Python之——网站访问流量统计
  10. 2014 年度 Git@OSC【非GitHub】 最热门的 50 个项目