turtlecoin/laravel-turtlecoin-services

此包已被废弃且不再维护。未建议替代包。

一个用于运行和与TurtleCoin服务和API交互的Laravel包

v1.0.0 2018-11-05 23:37 UTC

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)即可。

  1. 安装TurtleCoin Services for Laravel
  2. 示例
  3. 文档
  4. 许可

安装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_PASSWORDTC_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的商标。