binarycabin/brainblocks

通过BrainBlocks接收Nano支付的集成助手

1.4.3 2018-12-06 22:20 UTC

This package is auto-updated.

Last update: 2024-09-06 09:22:50 UTC


README

通过BrainBlocks.io接收Nano支付的集成助手

此包在添加带有Laravel的BrainBlocks按钮时添加了一些助手

安装

composer require binarycabin/brainblocks

在.env中,添加按钮将发送到的您的Nano钱包地址

BRAINBLOCKS_RECEIVE_ADDRESS=nano_1999...

添加按钮

简单地将按钮视图包含在您希望按钮出现的位置。确保包含按钮将收取的金额(以rai计)以及按钮将POST到并带有有效brainblocks令牌的url

@include('brainblocks::button',['amount'=>1000,'action'=>url('/pay')])

您可以使用此包含在页面中添加多个按钮。然后,在页面底部,务必添加您的javascript

@include('brainblocks::scripts')

验证BrainBlocks响应

在您的POST路由中,调用

Route::post('/pay', function(Request $request){
    $brainBlocksResponse = \BrainBlocks::getTokenResponse($request->brainblocks_token);
    $responseIsValid = \BrainBlocks::validateResponse($brainBlocksResponse,[
        'amount_rai' => 200,
    ]);
    dump($brainBlocksResponse);
    if($responseIsValid){
    	//.. do successful stuff
    }
});

BrainBlocks::getTokenResponse将返回BrainBlocks的完整响应,您可以手动验证或使用validateResponse助手。

默认情况下,validateResponse助手将确保

  • fulfilled属性为true
  • “destination”地址与配置中设置的地址匹配。第二个属性接受您想要检查的附加验证数组,例如检查金额。

自定义货币

除了默认的“rai”之外,您还可以将使用的货币更改为brainblocks.io上列出的任何受支持的货币。

@include('brainblocks::button',['amount'=>5,'currency'=>'usd','action'=>url('/pay')])

务必更新您的验证器以查找正确的货币和金额

$responseIsValid = \BrainBlocks::validateResponse($brainBlocksResponse,[
	'amount' => 5,
	'currency' => 'usd',
]);

自定义目的地

如果您需要将特定按钮发送到配置中设置之外的目的地址,您也可以将其添加为选项

@include('brainblocks::button',['amount'=>1000,'destination'=>'nano_11223344...','action'=>url('/pay')])

务必更新您的验证器以查找更改后的目的地而不是默认目的地

$responseIsValid = \BrainBlocks::validateResponse($brainBlocksResponse,[
	'amount_rai' => 1000,
	'destination' => 'xrb_1kojnrrw8rtybqsqk5uh7bcioo8thkiqjkibmn43togd416gzfye6j44b9sc',
]);

捐赠

Donate with NaNote