Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

PHP调用以太坊接口

西门幻雪雪vj
155 0 0
以太坊规定了每个节点需要实现的JSON RPC应用开发接口,如果希望使用PHP开发一个以太坊区块链上的去中心化应用(DApp),首先要解决的问题就是如何使用PHP调用以太坊JSON RPC接口:
: Q9 T" |, l, X# X2 S
1 j& R0 @: A# E( o如果你希望将网站快速接入以太坊,例如支持以太币支付,或者发行自己的代币,那么这个PHP以太坊开发详解课程提供了最佳的学习路径。
% W: ?6 \0 ~0 r( b! J! `0 O5 R; v6 B& w. Z& i* Z. w
虽然接口规范并没有对传输层进行约定,但大多数以太坊节点软件都实现了对HTTP协议的支持。
5 u) s; o& K2 T8 B* L  x因此我们可以使用Php的HTTP开发包来进行调用。例如,下面的代码使用guzzle这个http开发包来获取以太坊节点旳版本信息:1 m# q+ C( O$ b, b
  p0 _3 U8 N+ R5 ^. q
  1. [
    ( k) d% A) `, ~" }7 o  @7 H% Y
  2.     'jsonrpc' => '2.0',5 z8 k  [2 Z' B3 t% [
  3.     'method' => 'web3_clientVersion',
      I4 H& ]% T5 x1 c7 e
  4.     'params' => [],7 V. F. i' P: {0 T" Z1 M
  5.     'id' => time()! i. h3 R, B) C' L( Z1 u: C# {% M7 @
  6.   ]
    4 Z5 ^9 j; A3 o6 W4 b
  7. ];
    1 m8 k9 z: }6 E' H9 u$ Y: G
  8. $rsp = $client->post('http://localhost:8545',$opts);
    % p' B; F/ \: M9 K/ N
  9. echo $rsp->getBody() . PHP_EOL;
复制代码
3 I3 h6 p) e$ b( O
  v  N4 d# L8 L% f
当然你也可以借助于一些开源的封装,不过在php社区中,目前还缺乏得到统一认可的、相对比较成熟的以太坊开发包,因此在DApp的开发过程中,理解这些开源代码的实现原理就至关重要,而且往往需要综合利用多方面的代码资源才能解决问题。
8 z7 d* Q5 {8 v: T; f6 Q% k. z) ?3 {; J) R& ]" u; A: Z9 j
. R5 f# g8 V1 Q0 V  P# F1 }
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

西门幻雪雪vj 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    10