您的当前位置:首页>全部文章>文章详情

【PHP】支付宝第三方应用获取用户授权信息

CrazyPanda发表于:2024-02-28 21:11:37浏览:344次TAG:

支付宝服务商可创建第三方应用,一个第三方应用可绑定多个商家应用,商家应用绑定成功后会获取一个app_auth_token,授权令牌 app_auth_token 在没有重新授权、取消授权或刷新授权的情况下,永久有效。

业务需要,要获取用户的user_id/open_id,

1. 获取auth_code

拼接授权url

https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=auth_base&redirect_uri=

其中APPID使用的不是第三方应用的appid,而是是商家应用appid,是商家应用appid,是商家应用appid,

redirect_uri是支付授权回调链接,此链接需要在商家应用处设置回调URL,否则会报错。

scope=auth_base表示用的是静默访问,如果想要用户点击授权,可设置scope=auth_user

2. 获取用户信息

使用alipay.system.oauth.token接口,此处使用第三方应用appid,参数需要加上app_auth_token,私钥和秘钥也都是第三方应用对应的配置

返回结果如下:

array (
  'access_token' => 'authbseB1c6f27c00aa9486aa67xxxxxxxx',
  'auth_start' => '2024-02-28 20:43:21',
  'expires_in' => 31536000,
  're_expires_in' => 31536000,
  'refresh_token' => 'authbseBca35f43e781c42fxxxxxxxx',
  'open_id' => '064n-fCTbsKSlcLXhb5y8WnHXxxxxxxxx',
)

如果需要使用user_id而不是open_id,目前只能将商家应用申诉退回到user_id状态。


猜你喜欢

【PHP】RestFul简介和使用
1.1 RestFul简介REST全称是(Resource) Representational State Transfer,翻译过来为“资源代表状态转移”,中文意思是表述性状态转移。它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:“我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则,不是标
发表于:2024-05-24 浏览:217 TAG:
【PHP】PHP8如何通过Sanitize Filters来增强应用程序的安全性
PHP是一门广泛应用于Web开发的脚本语言,而安全性一直是Web应用程序开发者需要关注的重要问题。PHP8提供了一种称为Sanitize Filters的机制,通过对用户输入进行过滤和清理,可以增强应用程序的安全性。本文将详细介绍PHP8中Sanitize Filters的使用方法,并提供一些具体的代码示例,帮助开发者更好地了解如何应用这一特性。首先,让我们来了解一下Sanitize Filters是什么。Sanitize Filters是一组用于过滤和清理用户输入数据的PHP函数,可以帮助开发
发表于:2023-12-30 浏览:278 TAG:
【PHP】哪些函数会影响php探针
影响php探针的函数有ini_set()、error_reporting()、set_time_limit()、memory_limit()、exec()、eval()、disable_functions等等。详细介绍:1、ini_set()函数,用于动态地设置PHP的配置选项,可以在运行时修改php.ini文件中的配置;2、error_reporting()函数等等。本教程操作系统:windows10系统、PHP8.1.3版本、Dell G3电脑。PHP探针是一种用于检测和分析服务器
发表于:2023-12-06 浏览:386 TAG:
【PHP】php单利设计模式有哪些
php单利设计模式有:1、饿汉式单例模式,指在类加载时就创建一个实例,然后直接返回该实例;2、懒汉式单例模式,在第一次调用获取实例的方法时才创建一个实例,实现延迟加载;3、双重检查锁定单例模式,在懒汉式单例模式的基础上,通过加锁来保证线程安全,实现了延迟加载和线程安全;4、使用静态变量的单例模式,将实例保存在静态变量中,并提供一个静态方法来获取该实例,实现简单线程安全。本文的操作环境:Windows10系统、PHP8.1.3版本、Dell G3电脑。PHP单例设计模式是一种常用的设计模
发表于:2023-12-06 浏览:371 TAG:
【PHP】如何使用PHP8中的Constructor Property Promotion来优化数据库查询操作
如何使用PHP8中的Constructor Property Promotion来优化数据库查询操作?引言:随着互联网的快速发展,大量的数据被存储在数据库中。而在Web应用中,数据库查询操作是非常常见的需求。然而,不规范的数据库查询操作可能导致性能下降和安全隐患。因此,优化数据库查询操作是一个非常重要的任务。PHP语言一直以来都是Web开发的热门选择,而随着PHP8版本的发布,Constructor Property Promotion(构造函数属性提升)成为了一个非常方便的特性。结合Const
发表于:2023-12-30 浏览:348 TAG:
【PHP】使用 PHPMailer 实现邮件的实时发送
今天我们利用GitHub上20K+星星的项目 PHPMailer 实现一个接收询盘并实时同步到指定邮箱的功能。实现基本的HTML+CSS首先我们用 HTML+CSS 做一个简单的 form 表单<div>     <div>         <div>You can contact us at&nbs
发表于:2023-12-28 浏览:318 TAG:
【PHP】php中几个不常用的函数方法
1.abs():返回一个数的绝对值;2.set_time_limit :设置脚本最大执行时间(如果设置为0则没有时间限制,默认值为30秒,或者是在php.ini的max_execution_time被定义的值,如果此值存在。);3.strip_tags($str,'<p><a>'):剥去除p和a标签外的字符串中、XML 以及 PHP 的标签;4.iconv():字符串按要求的字符编码来转换;5.is_dir():检查目录是否存在;6.mkdir():创建文
发表于:2024-08-02 浏览:297 TAG:
【PHP】PHP开发中如何使用Nginx实现负载均衡
在现代web应用开发中,高并发访问是一个必须要面对的挑战。负载均衡是解决这个问题的一种有效的方案。在php开发中,使用nginx实现负载均衡是一个非常常见的方法。本文将详细介绍如何在php开发中使用nginx实现负载均衡。一、Nginx及负载均衡的基本概念NginxNginx是一款轻量级的高性能的web服务器和反向代理服务器。它的出现解决了Apache这样的传统web服务器在高并发访问下的性能瓶颈。Nginx具有极高的性能、稳定性和安全性,并且支持大量的并发连接。负载均衡负载均衡是一种将网络流量
发表于:2024-05-29 浏览:334 TAG:
【PHP】PHP去除字符串中的标点符号
1. 使用str_replace()2. 使用正则表达式3. 使用ctype_punct函数4. 去除中文字符
发表于:2024-11-11 浏览:231 TAG: #php
【PHP】TP使用endroid/qr-code生成二维码
前言TP版本:TP6.0Packagist 传送地址: https://packagist.org/packages/endroid/qr-code使用前需要检查下是否启用了 gd2 扩展,对于 endroid/qr-code 版本选择,参考扩展包文档对 PHP 版本的要求1、 安装扩展执行 composer 命令安装 endroid/qr-code 扩展composer require endroid/qr-code2、 使用builder生成器use Endro
发表于:2024-03-08 浏览:348 TAG: