eosjs转账代码怎么写

  介绍

eosjs转账代码怎么写,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

下面介绍使用V20版本的eosjs实现代币转账的思路,并给出eosjs转账的实现代码。

我们首先在nodejs中引入要使用到的类:

 const  {Api、JsonRpc RpcError},=,要求(& # 39;eosjs& # 39;)
  const  JsSignatureProvider =,要求(& # 39;eosjs/dist/eosjs-jssig& # 39;);,,
  const  fetch =,要求(& # 39;node-fetch& # 39;),,
  const  {TextEncoder的不同之处是,TextDecoder },=,要求(& # 39;util # 39;); 

在EOS中,代币转账就是对代币合约的<代码>转移()方法的调用,因此接下来就是准备一个对代币合约的动作调用。例如,下面的动作将从账号useraaaaaaaa向账号userbbbbbbbb转0.0001个SYS代币:

 const  action =, {
  账户才能:& # 39;eosio.token& # 39;
  ,,名字:& # 39;转移# 39;
  ,,授权:[{
  ,,,演员:,& # 39;useraaaaaaaa& # 39;
  ,,,的许可:,& # 39;活跃# 39;
  }),才能
  ,,数据:{
  从,,,,,& # 39;useraaaaaaaa& # 39;
  ,,,:,& # 39;userbbbbbbbb& # 39;
  ,,,数量:,& # 39;0.0001,sys # 39;
  ,,,的备忘录:,& # 39;& # 39;
  ,,},
  }

接下来要准备一个签名器对交易进行签名,在开发时,我们可以使用eosj内置的签名器实现JsSignatureProvider,它的实例化需要传入一组交易可能用到的私钥:

//, useraaaaaaaa的私钥
  const  defaultPrivateKey =,“5 jtusczk2xep3g9gh7f8bwtptrakasmnrrftmx4axdkd5k4zdnr",
  const  signatureProvider =, new  JsSignatureProvider ([defaultPrivateKey]); 

需要指出的是,JsSignatureProvider没有对私钥的任何保护措施,因此在生产环境中请不要使用这个签名器。在教程Eos智能合约与Dapp开发入门中我们给出了一个基于keosd的签名提供器可供生产环境下使用。

一旦交易完成签的名,就需要利用Eos节点旳RPC接口提交交易,因此接下来初始化一个JsonRpc对象:

 const  rpc =, new  JsonRpc (& # 39; http://127.0.0.1:8888& # 39;,, {, fetch }); 

上述签名,序列化和广播交易的过程在eosjs中由Api类封装,因此我们只需要调用Api实例的交易()方法即可:

 const  api =, new  Api ({RPC的不同之处是,signatureProvider, textDecoder:, new  textDecoder (),, textEncoder:, new  textEncoder (),});
  api.transact({行动:[行动]})
  ,然后才能(ret =祝辞,console.log (ret))
  .catch才能(err =祝辞,console.log (err)) 

在<代码>办理()方法的实现中,将调用JsonRpc对象的push_transaction()方法将签名后的序列化交易提交到节点并广播到整个EOS网络中。

看完上述内容,你们掌握eosjs转账代码怎么写的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

eosjs转账代码怎么写