第三方应用授权接入流程(PHP版)

简介: 第三方应用授权注意事项:[url]https://openclub.alipay.com/read.php?tid=14575&fid=68[/url]一、调用接口1、访问授权,获取app_auth_code获取app_auth_code方式:[url]https://openclub.

第三方应用授权注意事项:[url]https://openclub.alipay.com/read.php?tid=14575&fid=68[/url]

一、调用接口

1、访问授权,获取app_auth_code

获取app_auth_code方式:[url]https://openclub.alipay.com/read.php?tid=14581&fid=68[/url]

注:沙箱测试时,只能使用应用授权URL拼接的方式;

沙箱授权URL规则:[url]https://openauth.alipay[/url]dev.com/oauth2/appToAppAuth.htm?app_id=APPID&redirect_uri=ENCODED_URL

3、换取应用授权令牌接口

参数说明:

(1)grant_type:

authorization_code表示换取app_auth_token。 

refresh_token表示刷新app_auth_token。

(2)code:授权码,grant_type的值为authorization_code,该值必须填写。

参数值为授权后获取的app_auth_code;

(3)refresh_token:刷新令牌,grant_type值为refresh_token,该值不能为空。

参数值为此接口的响应参数app_refresh_token(至少需要通过grant_type=authorization_code调用此接口一次才能获取)。

$aop = new AopClient ();$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$aop->appId = 'your app_id';$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串';$aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';$aop->apiVersion = '1.0';$aop->signType = 'RSA2';$aop->postCharset='GBK';$aop->format='json';$request = new AlipayOpenAuthTokenAppRequest ();$request->setBizContent("{" .//authorization_code或者refresh_token   "\"grant_type\":\"authorization_code\"," .   "\"code\":\"603d0219f1884fc4b66093900e6b8X89\"" .//"\"refresh_token\":\"201509BBdcba1e3347de4e75ba3fed2c9abebE36\"" .   "  }");$result = $aop->execute ( $request); echo json_encode($result);

响应参数:

{"alipay_open_auth_token_app_response":{"code":"10000","msg":"Success","app_auth_token":"201904BBf9c9781043854fe58c25b4b378350A89","app_refresh_token":"201904BBa095c4366ba74acba2dd971244632F89","auth_app_id":"2018042501227906","expires_in":31536000,"re_expires_in":32140800,"tokens":[{"app_auth_token":"201904BBf9c9781043854fe58c25b4b378350A89","app_refresh_token":"201904BBa095c4366ba74acba2dd971244632F89","auth_app_id":"2018042501227906","expires_in":31536000,"re_expires_in":32140800,"user_id":"2088102175794899"}],"user_id":"2088102175794899"},"sign":"MFnHtA+aZaH+pJuQfIqdZx1ESEhd6QpaHcOPABZOCT+H+KQbSfZdKBPjhZecPDYNgi8MAbIuQ3W0ZV/c9AEF7a2JRFxMWl9h3j67eA5MGJTOt6o6zaKKA7iQY7ZaQvMuihCAJtiY8+Mx9I/SN6wSHpn7PyB6REtTc/DX8AXfO328ek3D/xBGJL0ZOhZwNR8f9PVd9LkjOvbWNkhSo4x6hZtiWpu+0A4hvz7IKrtDaPxLCAtXZGbABx6tnUit4E3JjJ6qfWVsfASLraK5faJIf8+c7TPep30DcWlVw76wcohrwAG9wGL2f/xHEPAKUpX2tZi2p83cH2+u6RuSI4XqUQ=="}

4、查询AppAuthToken的授权信息

参数说明:

app_auth_token:换取应用授权令牌接口返回的响应参数app_auth_token。

$aop = new AopClient ();$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';$aop->appId = 'your app_id';$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串';$aop->alipayrsaPublicKey='请填写支付宝公钥,一行字符串';$aop->apiVersion = '1.0';$aop->signType = 'RSA2';$aop->postCharset='GBK';$aop->format='json';$request = new AlipayOpenAuthTokenAppQueryRequest ();$request->setBizContent("{" ."\"app_auth_token\":\"201904BBf9c9781043854fe58c25b4b378350A89\"" ."  }");$result = $aop->execute ( $request); echo json_encode($result);

响应参数:

{"alipay_open_auth_token_app_query_response":{"code":"10000","msg":"Success","auth_app_id":"2018042501227906","auth_end":"2020-04-15 15:54:59","auth_methods":["ant.merchant.expand.indirect.modify","alipay.system.oauth.token","alipay.fund.auth.operation.detail.query","alipay.ebpp.pdeduct.sign.query","koubei.marketing.campaign.activity.offline","zhima.auth.info.authquery","alipay.offline.provider.shopaction.record","alipay.offline.market.shop.create","alipay.trade.refund","ssdata.dataservice.risk.rainscore.query","alipay.user.info.auth","alipay.commerce.cityfacilitator.voucher.generate","koubei.marketing.data.intelligent.effect.query","alipay.ebpp.pdeduct.bill.pay.status","alipay.marketing.campaign.cash.trigger","alipay.pass.template.add","koubei.marketing.data.indicator.query","alipay.eco.cplife.basicservice.initialize","zhima.credit.watchlistii.get","koubei.marketing.campaign.intelligent.promo.batchquery","alipay.eco.cplife.notice.delete","alipay.fund.trans.toaccount.transfer","zhima.credit.score.brief.get","alipay.user.info.share","alipay.eco.edu.kt.billing.modify","koubei.marketing.data.message.deliver","alipay.marketing.tool.fengdie.activity.query","koubei.marketing.data.customreport.save","alipay.eco.cplife.roominfo.upload","alipay.pass.instance.add","alipay.eco.cplife.community.batchquery","koubei.marketing.campaign.intelligent.promo.query","alipay.marketing.tool.fengdie.editor.query","alipay.eco.mycar.parking.parkinglotinfo.query","alipay.trade.precreate","alipay.eco.cplife.roominfo.query","alipay.ebpp.invoice.sycn","alipay.boss.prod.submerchant.create","zhima.customer.certification.query","zoloz.authentication.customer.facemanage.create","koubei.marketing.campaign.intelligent.promo.create","koubei.marketing.data.smartactivity.config","zhima.customer.certification.initialize","alipay.eco.edu.kt.parent.query","alipay.trade.create","alipay.eco.cplife.community.modify","alipay.trade.customs.declare","zhima.merchant.data.upload.initialize","alipay.eco.edu.kt.billing.send","koubei.marketing.campaign.item.merchantactivity.modify","alipay.eco.mycar.parking.parkinglotinfo.create","alipay.eco.cplife.bill.modify","alipay.offline.provider.useraction.record","alipay.trade.order.settle","koubei.marketing.campaign.intelligent.promo.consult","koubei.marketing.campaign.intelligent.promo.modify","alipay.ebpp.invoice.apply.result.sync","alipay.marketing.cdp.advertise.operate","zoloz.authentication.customer.facemanage.delete","koubei.marketing.campaign.crowd.delete","alipay.trade.close","alipay.eco.cplife.residentinfo.delete","monitor.heartbeat.syn","alipay.eco.mycar.parking.order.sync","alipay.commerce.medical.instcard.createandpay","alipay.trade.customs.query","alipay.marketing.cdp.advertise.modify","alipay.ebpp.pdeduct.async.pay","alipay.eco.mycar.parking.enterinfo.sync","alipay.ebpp.invoice.user.trade.query","alipay.boss.prod.submerchant.modify","alipay.eco.edu.kt.student.modify","alipay.eco.cplife.bill.sync","zoloz.authentication.smilepay.initialize","alipay.trade.query","alipay.ebpp.invoice.apply","alipay.eco.edu.kt.schoolinfo.modify","koubei.marketing.campaign.activity.create","zhima.customer.certification.certify","alipay.eco.cplife.community.details.query","alipay.eco.cplife.notice.publish","koubei.marketing.campaign.crowd.batchquery","alipay.commerce.cityfacilitator.voucher.refund","alipay.eco.mycar.parking.parkinglotinfo.update","alipay.ebpp.pdeduct.sign.add","koubei.marketing.data.customreport.batchquery","alipay.ebpp.invoice.info.send","alipay.eco.mycar.parking.exitinfo.sync","alipay.eco.mycar.parking.vehicle.query","alipay.eco.cplife.community.create","alipay.eco.cplife.residentinfo.upload","koubei.marketing.data.customreport.query","koubei.marketing.campaign.item.merchantactivity.create","zhima.customer.certification.material.certify","ant.merchant.expand.indirect.create","alipay.pass.instance.update","zoloz.authentication.customer.ftoken.query","alipay.ebpp.invoice.title.sync","alipay.offline.market.shop.batchquery","alipay.eco.cplife.bill.batch.upload","zhima.data.feedbackurl.query","alipay.trade.pay","alipay.fund.auth.operation.cancel","alipay.ebpp.pdeduct.sign.cancel","zhima.credit.antifraud.verify","alipay.eco.mycar.parking.config.query","alipay.marketing.tool.fengdie.activity.create","alipay.offline.market.applyorder.batchquery","alipay.eco.cplife.bill.batchquery","alipay.marketing.campaign.cash.status.modify","alipay.marketing.campaign.cash.list.query","alipay.security.risk.customerrisk.query","alipay.offline.material.image.upload","alipay.eco.cplife.roominfo.delete","alipay.ebpp.pdeduct.sign.validate","alipay.fund.auth.order.voucher.create","alipay.ebpp.invoice.file.sync.retry","alipay.offline.market.shop.modify","alipay.eco.cplife.basicservice.modify","alipay.marketing.cdp.advertise.query","alipay.data.dataservice.bill.downloadurl.query","alipay.commerce.medical.information.upload","koubei.marketing.campaign.crowd.count","alipay.offline.market.shop.category.query","alipay.trade.wap.pay","koubei.marketing.campaign.activity.batchquery","alipay.eco.edu.kt.billing.query","zhima.merchant.single.data.upload","alipay.commerce.medical.card.query","alipay.offline.market.shop.summary.batchquery","alipay.eco.mycar.parking.config.set","alipay.ebpp.invoice.file.query","alipay.eco.edu.kt.student.query","alipay.open.auth.token.app.query","alipay.trade.app.pay","alipay.ebpp.invoice.title.list.get","ant.merchant.expand.indirect.transfer","koubei.marketing.campaign.crowd.create","koubei.marketing.data.smartactivity.forecast","alipay.ebpp.bill.add","koubei.marketing.campaign.intelligent.shop.consult","alipay.commerce.cityfacilitator.voucher.batchquery","alipay.offline.market.shop.querydetail","alipay.fund.trans.order.query","alipay.security.risk.rainscore.query","zhima.customer.contract.initialize","zhima.credit.score.get","alipay.ebpp.pdeduct.pay","koubei.marketing.data.intelligent.indicator.query","zhima.data.batch.feedback","alipay.trade.fastpay.refund.query","alipay.boss.prod.submerchant.query","alipay.eco.cplife.bill.delete","alipay.marketing.tool.fengdie.template.query","koubei.marketing.campaign.item.merchantactivity.batchquery","koubei.marketing.data.customreport.detail.query","alipay.trade.orderinfo.sync","alipay.security.data.info.securitydata.query","alipay.commerce.cityfacilitator.station.query","alipay.marketing.facetoface.decode.use","alipay.trade.refund.apply","alipay.security.risk.customerrisk.send","ant.merchant.expand.indirect.query","koubei.marketing.campaign.tags.query","alipay.user.userinfo.share","alipay.trade.page.pay","alipay.ebpp.invoice.info.get","alipay.open.auth.token.app","alipay.marketing.campaign.cash.create","alipay.ebpp.invoice.info.applyid.query","koubei.marketing.data.customreport.delete","alipay.pass.template.update","alipay.marketing.cdp.advertise.create","alipay.fund.auth.order.unfreeze","alipay.trade.cancel","koubei.marketing.campaign.item.merchantactivity.close","alipay.eco.cplife.pay.result.query","alipay.marketing.campaign.cash.detail.query","koubei.marketing.campaign.item.merchantactivity.query","koubei.marketing.campaign.activity.modify","alipay.ebpp.invoice.merchantlist.enter.apply","koubei.marketing.campaign.intelligent.promo.delete","alipay.commerce.medical.instcard.bind","alipay.eco.mycar.parking.order.update","koubei.marketing.campaign.crowd.modify","koubei.marketing.campaign.intelligent.template.consult","koubei.marketing.campaign.crowd.detail.query","alipay.ebpp.industry.kms.pubkey.query","alipay.ebpp.bill.get","koubei.marketing.data.smartmanagement.diagnose","zoloz.authentication.customer.smilepay.initialize","koubei.marketing.data.trade.habbit.query","alipay.fund.auth.order.freeze","koubei.trade.order.consult","zhima.merchant.closeloop.data.upload","koubei.marketing.campaign.activity.query","koubei.marketing.campaign.recruit.shop.query","zhima.credit.watchlist.brief.get","alipay.ebpp.invoice.title.dynamic.get"],"auth_start":"2019-04-16 15:54:59","expires_in":31536000,"status":"valid","user_id":"2088102175794899"},"sign":"JIzmwzQF9tyWC+gVSQEtgPrgbv0QTLE5zw56SQkyKxvKzz9a/XhuPgEfMOjOaPviRuzlaf876LKRjqaY9oVui3McAnt5pL9uz/mHseh5t9cTIXFDPBmdTkGstjSpkUIBV6LYUBw8F+atvngzCSP7VcVPd4RpfLQRaB30YxlFr2HYRD1wTBvQFP7XXkJZMQCII0kECQGAY77hqNEF7oJHThY38MLbd/xBKWawfkYONnUgeyO0qNi5IGVShi+/RWZ4O/KWRjuRXi0mq/7wtPLA0H45S7/DLS6ImQ39UF/2nskRW6iISYm4JJ7gLODc2k3eFmWr014iMctfxPLTbxm8cA=="}

二、显示效果

沙箱无法查询,正式环境显示如下

68_25168_25630fb09b0259a.png

 

如果还是报错,请按如下方式进行提问:

正确提问方式:使用环境(沙箱还是正式环境)+接口名称(中文+英文)+ 请求参数 + 报错信息详情

目录
相关文章
|
2月前
|
安全 关系型数据库 MySQL
PHP手术麻醉临床信息管理系统源码 术前、术中、术后全流程管理
麻醉文书是用于管理患者手术全过程的文书。 麻醉同意:医院麻醉知情同意书的填写和编辑; 病案查询:可以通过搜索框搜索患者查询病案; 申请手术:手术申请单的填写和打印; 风险评估:医院手术风险评估表的书写和编辑。
43 0
|
7月前
|
关系型数据库 MySQL 应用服务中间件
Mac PHP-Nginx-Mysql 本地开发日常启动流程
Mac PHP-Nginx-Mysql 本地开发日常启动流程
42 1
|
PHP 开发工具
PHP对接苹果支付全流程
PHP对接苹果支付全流程
762 0
PHP对接苹果支付全流程
|
4月前
|
安全 关系型数据库 MySQL
【PHP】医院HIS手术麻醉临床信息管理系统源码 实现术前、术中、术后全流程管理
【PHP】医院HIS手术麻醉临床信息管理系统源码 实现术前、术中、术后全流程管理
49 0
|
6月前
|
前端开发 JavaScript API
php的短信验证的流程,如何实现前端js加后端php
php的短信验证的流程,如何实现前端js加后端php
|
9月前
|
API PHP
企业微信授权登录服务端API实战开发(2):php程序开发获取访问用户身份
企业微信授权登录服务端API实战开发(2):php程序开发获取访问用户身份
108 0
|
10月前
|
SQL 算法 IDE
【web 开发基础】PHP 中的特殊流程控制(exit) -PHP 快速入门 (22)
当前的脚本中只要执行到exit语句,无论它是在哪个结构中,都会直接退出当前脚本。exit()是一个函数,exit()是die()函数的别名,它可以带有一个参数输出一条消息作为提示,并退出当前脚本。比如:我们通常在连接数据库、选择数据库,以及执行SQL语句中如果有失败的环节,则可以使用3种方式输出错误消息,并退出脚本。
72 0
|
11月前
|
SQL Web App开发 设计模式
PHP代码审计系列(一) 基础:方法、思路、流程
PHP代码审计系列(一) 基础:方法、思路、流程
369 0
|
11月前
|
PHP
【web 开发基础】PHP 中的特殊流程控制(continue) -PHP 快速入门 (21)
continue语句只能用于循环语句内部,功能是跳过本次循环继续执行下一次循环结构,而不终止整个循环的执行。在while和do...while语句中,continue语句跳转到循环条件处开始继续执行,对于for循环随后的动作是变量更新。
83 0
|
11月前
|
PHP
【web 开发基础】PHP中的特殊流程控制(break) -PHP 快速入门 (20)
我们在介绍while和for循环的时候,都是通过循环语句本身提供的条件表达式来指定循环的次数,或者是遇到特殊情况要停止循环。如果想在循环体执行过程中终止循环,或是跳过一些循环继续执行其他循环,就需要使用到特殊的流程控制语句。如:break语句,continue语句,exit语句。接着下面就来详细了解PHP中break语句的用法和相关概念。
78 0