digikraaft / watupay-php
Watupay API 的 PHP 实现
Requires
- php: ^7.4
- ext-json: *
- ext-openssl: *
- guzzlehttp/guzzle: ^6.5
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- mockery/mockery: ^1.4
- php-coveralls/php-coveralls: ^2.2
- phpunit/phpunit: ^9.0
- scrutinizer/ocular: ^1.7
- vimeo/psalm: ^3.11
This package is auto-updated.
Last update: 2024-08-29 05:49:46 UTC
README
此软件包提供了一种表达性和便捷的方式来与 Watupay API 交互
安装
您可以通过 composer 安装此软件包
composer require digikraaft/watupay-php
用法
此软件包目前支持 Watupay 的 文档 中记录的所有 API。使用单个 API 遵循通用约定,使其简单且可预测。
<?php
{API_NAME}::{API_END_POINT}();
在此之前,需要设置 API 密钥。例如,要访问 watubill/channels
端点,
<?php
include_once('vendor/autoload.php');
use Digikraaft\Watupay\Watupay;
use Digikraaft\Watupay\Bill;
Watupay::setApiKey('WTP-T-SK-abcd1234abcd');
$bills = Bill::list();
您可以轻松地将参数传递给作为参数传递给 API_END_POINT
方法的参数,如下所示
<?php
include_once('vendor/autoload.php');
use Digikraaft\Watupay\Watupay;
use Digikraaft\Watupay\Bill;
Watupay::setApiKey('WTP-T-SK-abcd1234abcd');
$params = [
'is_favourite' => 0,
'country' => 'NG',
'group' => 'others'
];
$bills = Bill::list($params);
这也适用于 POST
请求。
对于需要路径参数的端点,如带有请求 channel/info/bill_id
的 fetch bill
,只需将字符串传递给 API_END_POINT
,如下所示
<?php
include_once('vendor/autoload.php');
use Digikraaft\Watupay\Watupay;
use Digikraaft\Watupay\Bill;
Watupay::setApiKey('WTP-T-SK-abcd1234abcd');
$bill = Bill::fetch('bill-07');
有一些关于 API_END_POINT
约定的例外情况。这些详情可以在 这里 找到。
此软件包返回 Watupay API 的确切响应,但作为 stdClass
类型,这样就可以像这样访问响应
<?php
include_once('vendor/autoload.php');
use Digikraaft\Watupay\Watupay;
use Digikraaft\Watupay\Bill;
Watupay::setApiKey('WTP-T-SK-abcd1234abcd');
$bill = Bill::fetch('bill-07');
if (! $bill->has_error) {
echo $bill->data->name;
}
异常处理
要处理 API 异常,请使用 Digikraaft\Watupay\Exceptions\ApiErrorException
类,如下所示
<?php
include_once('vendor/autoload.php');
use Digikraaft\Watupay\Watupay;
use Digikraaft\Watupay\Bill;
use Digikraaft\Watupay\Exceptions\ApiErrorException;
try{
Watupay::setApiKey('WTP-T-SK-abcd1234abcd');
$bill = Bill::fetch('bill-07');
if (! $bill->has_error) {
echo $bill->data->name;
}
}catch(ApiErrorException $exception){
echo $exception->getMessage();
}
数据加密
在发送到 API 之前加密敏感数据,请使用 WatupayEncryption::encrypt($data, $key, $iv, $blockSize, $mode)
方法
文档
有关详细文档,请查看 此处 的维基页面。同时,请查看 Watupay 文档 以获取有关输入参数的详细信息。
更多精彩内容
请在此处查看更多免费好东西!这里
测试
一些测试针对实际的 Watupay API,因此请按照 phpunit.xml.dist
文件中所示输入您的 API、加密和 IV 密钥。
composer test
变更日志
请查看 CHANGELOG 以获取有关最近更改的更多信息。
贡献
请查看 CONTRIBUTING 以获取详细信息。
安全
如果您发现任何安全问题,请通过电子邮件发送到 dev@digitalkraaft.com 而不是使用问题跟踪器。
致谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。