reezy / alipaysdk
reezy alipaysdk
v0.4.0
2020-10-11 11:53 UTC
Requires
- php: >7.3
Requires (Dev)
- phpunit/phpunit: ^7.5
This package is auto-updated.
Last update: 2025-05-11 23:40:13 UTC
README
一个简单易用的支付宝开放平台服务端SDK,提供基本的支付宝API调用能力。
安装依赖
composer require reezy/alipaysdk
使用
创建SDK实例
// 创建 AlipaySdk 实例
$sdk = AlipaySdk::create($appId, $appSecret);
// 使用证书
$sdk->useCerts($appCertPath, $rootCertPath, $alipayCertPath);
支付宝接口,响应一般有以下几种形式,这里做了兼容处理
{error_response: {}, ...}
,返回error_response
{a_b_c_d_response: {}, ...}
,返回a_b_c_d_response
{...}
直接返回
$resp = $sdk->execute('alipay.system.oauth.token', [
'grant_type' => 'authorization_code',
'code' => $code,
]);
$resp = $sdk->execute('alipay.user.info.share', [
'auth_token' => $this->accessToken,
]);
if ($resp['code'] == 10000) {
// ...
}
实例配置
<?php
return [
'default' => [
// 应用ID,例如:2019051064521003
'app_id' => env('ALIPAY_APP_ID'),
// 应用私钥,例如:MIIEvQIBADANB ...
'app_secret' => env('ALIPAY_APP_SECRET'),
// 应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt
'app_cert_path' => env('ALIPAY_APP_CERT_PATH'),
// 支付宝根证书文件路径,例如:/foo/alipayRootCert.crt
'root_cert_path' => env('ALIPAY_ROOT_CERT_PATH'),
// 支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt
'alipay_cert_path' => env('ALIPAY_ALIPAY_CERT_PATH'),
// 支付宝公钥,例如:MIIBIjANBg...
// 注:如果采用非证书模式,则无需赋值上面的三个证书路径,改为赋值如下的支付宝公钥字符串即可
'alipay_public_key' => env('ALIPAY_ALIPAY_PUBLIC_KEY'),
// 可选,商户ID
'merchant_id' => env('ALIPAY_MERCHANT_ID'),
// 可选,可设置AES密钥,调用AES加解密相关接口时需要,例如:aa4BtZ4tspm2wnXLb1ThQA==
'encrypt_key' => env('ALIPAY_ENCRYPT_KEY'),
// 可选,可设置异步通知接收服务地址,例如:https://www.test.com/callback
'notify_url' => env('ALIPAY_NOTIFY_URL'),
],
];
通过工厂获取SDK实例
$factory = new AlipaySdkFactory();
$sdk = $factory->get('default');
在Hyperf中获取默认实例
$sdk = ApplicationContext::getContainer()->get(AlipaySdkFactoryInterface::class)->get();
获取支付宝用户信息
$client = ApplicationContext::getContainer()->get(AlipaySdkFactoryInterface::class)->get()->oauth($authCode);
$info = $client->getUserInfo();
参考
https://github.com/alipay/alipay-easysdk/tree/master/php
LICENSE
The Component is open-sourced software licensed under the Apache license.