binarycabin / brainblocks
通过BrainBlocks接收Nano支付的集成助手
1.4.3
2018-12-06 22:20 UTC
Requires
- guzzlehttp/guzzle: ^6.3
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',
]);