digikraaft/watupay-php

Watupay API 的 PHP 实现

v1.0.1 2020-06-28 21:59 UTC

This package is auto-updated.

Last update: 2024-08-29 05:49:46 UTC


README

tests Scrutinizer Code Quality Build Status Code Intelligence Status License: MIT

此软件包提供了一种表达性和便捷的方式来与 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_idfetch 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)。请参阅 许可证文件 以获取更多信息。