资讯专栏INFORMATION COLUMN

php调用以太坊geth API说明

everfight / 3014人阅读

摘要:上一篇我们开始以太坊环境构建,并做了一些基本的调用。接口名称以逗号分隔的格式进行描述,如果没有特别说明的话,就被默认为是的设定。大的种类是主要是用接口划分,并以的形式定义。是的,帐户已创建并返回地址。

上一篇我们开始ph以太坊环境构建,并做了一些基本的API调用。

这次我想再挖一下API的调用。

1.上次的补充

2.关于API的种类

3.从PHP调用

1.上次的补充

上一次,说明了geth的开始选项,但是-- rpcapi的说明没提到。

这个选项是指定API接受的HTTP-RPC接口的种类。

接口名称以逗号分隔的格式进行描述,如果没有特别说明的话,就被默认为是eth,net,web3的设定。

顺便说一下,这个选项可以指定的接口可以是admin, debug, eth, miner, net, personal, rpc, txpool, web3

在上一次的启动选项中,使用了如下描述,除了标准的接口之外,还指定了使用一个personal选项。

--rpcapi "eth,net,web3,personal"
2.API的种类

刚才的说明稍微提到了一下,API有几个种类。

大的种类是主要是用接口划分,并以{interface name} _ {method name}的形式定义。

各API的说明可以参考wiki,但是需要注意,因为接口描述的URL是不同的。

web3, net, eth这几个接口在https://github.com/ethereum/wiki/wiki/JSON-RPC上描述。

admin, debug, miner, personal, txpool的接口被记载在这里:https://github.com/ethereum/go-ethereum/wiki/Management-APIs。

3.PHP的调用

既然你已经了解了API,那么让我们再次试着调用API。

上次使用了eth,这次利用Management - APIspersonal

如果你看看上次使用的ethereum.php的源代码,你会注意到没有Management-APIs的函数接口。

既然你不能原样使用personal的API,那就试试自己来吧。

在这个时候我想使用personal接口的newAccountunlockAccount方法,所以我添加了以下描述:

function personal_newAccount($password)
{
    return $this->ether_request(__FUNCTION__, array($password));
}

function personal_unlockAccount($address, $password)
{
    return $this->ether_request(__FUNCTION__, array($address, $password));
}

顺便说一句,personal_newAccount将添加帐户处理。

另一个personal_unlockAccount是在做转账等交易之前的必要过程。

让我们再次运行API。

$ cd /home/yoshida/php-eth/
$ ls -l
ethereum.php json-rpc.php test.php
$ vim test2.php
persoanl_newAccount("password"));

这次我把它写在一个名为test2.php的文件中。

我们来尝试一下。

$ php test2.php
0xf40ccb0f626ce3f6058bd911ddc4013eaa6e4167

是的,帐户已创建并返回地址。

让我们点击执行上次制作的eth_accounts的脚本。

$ php test.php
Array
(
[0] => 0xb83fa0d1c6b34a42f900cca5a32400c3b6f69f4b
[1] => 0xf40ccb0f626ce3f6058bd911ddc4013eaa6e4167
)

我们也可以确认帐户在这里也增加了。

4.最后

虽然这次有点短,但是对PHP的API调用的了解是不是更深入?

但是,由于还有一些部分无法解释,我想在下次解释汇款周边地区。

另外如果你想直接看看区块链在以太坊中是如何使用的,可以学习下面的教程:

php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和事件等内容。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/29346.html

相关文章

  • php调用以太geth API说明

    摘要:上一篇我们开始以太坊环境构建,并做了一些基本的调用。接口名称以逗号分隔的格式进行描述,如果没有特别说明的话,就被默认为是的设定。大的种类是主要是用接口划分,并以的形式定义。是的,帐户已创建并返回地址。 上一篇我们开始ph以太坊环境构建,并做了一些基本的API调用。 这次我想再挖一下API的调用。 1.上次的补充 2.关于API的种类 3.从PHP调用 1.上次的补充 上一次,说明了...

    levinit 评论0 收藏0
  • 如何使用密码保护以太JSON-RPC的API

    摘要:本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过进行安全输出。以太坊,主要是针对工程师使用进行区块链以太坊开发的详解。 本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过Internet进行安全输出。 Go Ethereum(geth)是以太坊节点最受欢迎的软件。其他流行的以太坊实现是Pa...

    Zachary 评论0 收藏0
  • 如何使用密码保护以太JSON-RPC的API

    摘要:本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过进行安全输出。以太坊,主要是针对工程师使用进行区块链以太坊开发的详解。 本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过Internet进行安全输出。 Go Ethereum(geth)是以太坊节点最受欢迎的软件。其他流行的以太坊实现是Pa...

    cartoon 评论0 收藏0
  • 如何使用密码保护以太JSON-RPC的API

    摘要:本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过进行安全输出。以太坊,主要是针对工程师使用进行区块链以太坊开发的详解。 本文面向以太坊智能合约应用程序开发人员,并讨论如何在密码保护后,安全地运行你的以太坊节点,以便通过Internet进行安全输出。 Go Ethereum(geth)是以太坊节点最受欢迎的软件。其他流行的以太坊实现是Pa...

    wow_worktile 评论0 收藏0
  • 以太区块链保证Asp.Net Core的API安全(上)

    摘要:去中心化应用程序的常见设计不仅依赖于以太坊区块链,还依赖于层。每个用户的所有登录操作在以太坊区块链上变得不可公开。用于验证用户身份的机制与以太坊用于保证以太坊区块链安全性的机制相同。以太坊,主要是针对工程师使用进行区块链以太坊开发的详解。 去中心化应用程序(DApp)的常见设计不仅依赖于以太坊区块链,还依赖于API层。在这种情况下,DApp通过用户的以太坊帐户与智能合约进行交互,并通过...

    vvpale 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<