wumm/laravel-ethereum

Ethereum JSON RPC API

dev-master 2022-06-30 09:20 UTC

This package is auto-updated.

Last update: 2024-09-29 06:09:07 UTC


README

Laravel 的 Ethereum 包

借用一下,作者好久没有更新了

Latest Stable Version Latest Unstable Version License Total Downloads

介绍

这是一个简单的 Laravel 服务提供者,提供了对 通用 JSON RPC

管理 API 的支持

安装

使用 Composer 安装 PHP 客户端库

composer require jcsofts/laravel-ethereum

或者,将这些两行添加到您的 composer require 部分

{
    "require": {
        "jcsofts/laravel-ethereum": "dev-master"
    }
}

Laravel 5.5+

如果您使用的是 Laravel 5.5 或更高版本,该包将自动注册 Ethereum 提供者和外观。

Laravel 5.4 及以下

Jcsofts\LaravelEthereum\EthereumServiceProvider 添加到您的 config/app.php 文件中的 providers 数组中

'providers' => [
    // Other service providers...

    Jcsofts\LaravelEthereum\EthereumServiceProvider::class,
],

如果您想使用外观接口,可以在需要时使用外观类 use

use Jcsofts\LaravelEthereum\Facade\Ethereum;

或者在 config/app.php 中添加别名

'aliases' => [
    ...
    'Ethereum' => Jcsofts\LaravelEthereum\Facade\Ethereum::class,
],

Laravel-Ethereum 与 Lumen 一起使用

laravel-ethereum 也可以与 Lumen 一起使用!您需要手动做一些工作才能使其运行。首先,使用 composer 安装此包

composer require jcsofts/laravel-ethereum

接下来,我们需要让 Lumen 知道我们的库存在。更新 bootstrap/app.php 并注册 EthereumServiceProvider

$app->register(Jcsofts\LaravelEthereum\EthereumServiceProvider::class);

最后,我们需要配置库。不幸的是,Lumen 不支持自动发布文件,所以您需要自己创建配置文件。创建一个配置目录,并将包中的配置文件复制到您的项目中

mkdir config
cp vendor/jcsofts/laravel-ethereum/config/ethereum.php config/ethereum.php

此时,在您的 .env 文件中设置 ETH_HOSTETH_PORT,它应该就可以为您工作了。您可以使用以下路由进行测试

try{
        $ret = \Jcsofts\LaravelEthereum\Facade\Ethereum::eth_protocolVersion();
        print_r($ret);
    }catch (Exception $e){
        echo $e->getMessage();
    }

配置

您可以使用 artisan vendor:publish 将分发配置文件复制到您的应用程序的配置目录中

php artisan vendor:publish

然后更新 config/ethereum.php 并使用您的凭据。或者,您也可以使用以下方式更新您的 .env 文件

ETH_HOST=https://
ETH_PORT=8555

用法

要使用 Ethereum 客户端库,您可以使用外观或从服务容器请求实例

try{
        $ret = \Jcsofts\LaravelEthereum\Facade\Ethereum::eth_protocolVersion();
        print_r($ret);
    }catch (Exception $e){
        echo $e->getMessage();
    }

或者

$thereum = app('Ethereum');

$result=$thereum->eth_protocolVersion();