turtlecoin / laravel-turtlecoin-services
一个用于运行和与TurtleCoin服务和API交互的Laravel包
Requires
- php: >=7.1.3
- turtlecoin/turtlecoin-rpc-php: 2.1.*
Requires (Dev)
- phpunit/phpunit: ~7.0
This package is auto-updated.
Last update: 2021-07-06 06:30:33 UTC
README
TurtleCoin Services是一个包装TurtleCoin JSON-RPC服务的Laravel包。此包简化了与所有TurtleCoin RPC API(TurtleCoind和turtle-services)的交互。钱包服务包含在此包中,因此您可以快速在Homestead vagrant盒子中开始使用。无需下载整个区块链,只需连接到任意可用的公共节点(例如node.trtl.io)即可。
安装TurtleCoin Services for Laravel
此包需要PHP >=7.1.3。
首先,在您的Laravel 5.x项目中使用composer安装此包
composer require turtlecoin/laravel-turtlecoin-services
然后,使用以下命令将此包的配置文件发布到config/turtlecoin.php
:
php artisan vendor:publish --tag=turtlecoin
将这些添加到您的.env文件中
TC_DAEMON_HOST=http://node.trtl.io
TC_DAEMON_PORT=11898
TC_WALLET_SERVICE_HOST=https://
TC_WALLET_SERVICE_PORT=8070
TC_WALLET_SERVICE_RPC_PASSWORD=rpcpassw0rd
TC_WALLET_DIRECTORY=../wallet
TC_WALLET_FILENAME=master.wallet
TC_WALLET_PASSWORD=walletpassw0rd
配置说明
- 如果您没有运行自己的TurtleCoin节点,您可以使用任何可用的公共节点作为
TC_DAEMON_HOST
。 - 将
TC_WALLET_SERVICE_RPC_PASSWORD
和TC_WALLET_PASSWORD
中的密码更改得更强。 - 钱包服务(turtle-services)包含在此包中。如果您想运行包含的钱包服务,请将
TC_WALLET_SERVICE_HOST
设置为https://
。 - 上述示例中钱包文件的位置建议在开发中使用Homestead vagrant盒子。如果文件位于与您的操作系统共享的目录中(例如您的项目目录),则钱包服务可能无法启动。
- 在启动钱包服务之前,请务必设置您的钱包密码,因为钱包需要在钱包服务运行之前创建。
创建钱包容器
php artisan turtlecoin:create-wallet
为您的钱包容器启动捆绑的钱包服务
php artisan turtlecoin:start-wallet
或者您可以在后台运行它
php artisan turtlecoin:start-wallet --background-process
示例
所有TurtleCoin API都可以通过TurtleCoin
外观访问。要调用通过节点(TurtleCoind守护进程)公开的方法,请使用TurtleCoin::node()
。要调用通过钱包服务(turtle-service)提供的方法,请使用TurtleCoin::wallet()
。以下是一些示例
TurtleCoin节点API示例
echo TurtleCoin::node()->getHeight(); > {"height":948526,"network_height":948526,"status":"OK"}
钱包API示例
echo TurtleCoin::wallet()->getBalance($walletAddress); > {"id":0,"jsonrpc":"2.0","result":["availableBalance":100,"lockedAmount":50]}
或者您可能希望直接以数组形式访问result
字段
$response = TurtleCoin::wallet()->getBalance($walletAddress); // The result field from the RPC response $response->result(); array:2 [▼ "availableBalance" => 10000 "lockedAmount" => 0 ]
可选地,您可以访问关于响应的其他详细信息
$response = TurtleCoin::wallet()->getBalance($walletAddress); // Full RPC response as JSON string $response->toJson(); // Full RPC response as an array $response->toArray(); // Or other response details $response->getStatusCode(); $response->getProtocolVersion(); $response->getHeaders(); $response->hasHeader($header); $response->getHeader($header); $response->getHeaderLine($header); $response->getBody();
文档
TurtleCoin RPC API的文档可以在api-docs.turtlecoin.lol找到。
许可
TurtleCoin Services for Laravel是开源软件,受MIT许可许可。
Laravel是Taylor Otwell的商标。