真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

eosjs轉(zhuǎn)賬代碼怎么寫

eosjs轉(zhuǎn)賬代碼怎么寫,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供巴楚網(wǎng)站建設(shè)、巴楚做網(wǎng)站、巴楚網(wǎng)站設(shè)計(jì)、巴楚網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、巴楚企業(yè)網(wǎng)站模板建站服務(wù),10余年巴楚做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

下面介紹使用V20版本的eosjs實(shí)現(xiàn)代幣轉(zhuǎn)賬的思路,并給出eosjs轉(zhuǎn)賬的實(shí)現(xiàn)代碼。

我們首先在nodejs中引入要使用到的類:

const {Api,JsonRpc,RpcError} = require('eosjs')
const JsSignatureProvider = require('eosjs/dist/eosjs-jssig');  
const fetch = require('node-fetch'); 
const { TextEncoder, TextDecoder } = require('util');

在EOS中,代幣轉(zhuǎn)賬就是對代幣合約的transfer()方法的調(diào)用,因此接下來就是準(zhǔn)備一個(gè)對代幣合約的動(dòng)作調(diào)用。例如,下面的動(dòng)作將從賬號(hào)useraaaaaaaa向賬號(hào)userbbbbbbbb轉(zhuǎn)0.0001個(gè)SYS代幣:

const action = {
  account: 'eosio.token',
  name: 'transfer',
  authorization: [{
    actor: 'useraaaaaaaa',
    permission: 'active',
  }],
  data: {
    from: 'useraaaaaaaa',
    to: 'userbbbbbbbb',
    quantity: '0.0001 SYS',
    memo: '',
  },
}

接下來要準(zhǔn)備一個(gè)簽名器對交易進(jìn)行簽名,在開發(fā)時(shí),我們可以使用eosj內(nèi)置的簽名器實(shí)現(xiàn) JsSignatureProvider,它的實(shí)例化需要傳入一組交易可能用到的私鑰:

// useraaaaaaaa的私鑰
const defaultPrivateKey = "5JtUScZK2XEp3g9gh7F8bwtPTRAkASmNrrftmx4AxDKD5K4zDnr"; 
const signatureProvider = new JsSignatureProvider([defaultPrivateKey]);

需要指出的是,JsSignatureProvider沒有對私鑰的任何保護(hù)措施,因此在生產(chǎn)環(huán)境中請不要使用這個(gè)簽名器。在教程Eos智能合約與Dapp開發(fā)入門中我們給出了一個(gè)基于keosd的簽名提供器可供生產(chǎn)環(huán)境下使用。

一旦交易完成簽名,就需要利用EOS節(jié)點(diǎn)旳RPC接口提交交易,因此接下來初始化一個(gè)JsonRpc對象:

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

上述簽名、序列化和廣播交易的過程在eosjs中由Api類封裝,因此我們只需要調(diào)用Api實(shí)例的transact()方法即可:

const api = new Api({ rpc, signatureProvider, textDecoder: new TextDecoder(), textEncoder: new TextEncoder() });
api.transact({actions:[action]})
  .then(ret => console.log(ret))
  .catch(err => console.log(err))

transact()方法的實(shí)現(xiàn)中,將調(diào)用JsonRpc對象的push_transaction()方法將簽名后的序列化交易提交到節(jié)點(diǎn)并廣播到整個(gè)EOS網(wǎng)絡(luò)中。

看完上述內(nèi)容,你們掌握eosjs轉(zhuǎn)賬代碼怎么寫的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


當(dāng)前題目:eosjs轉(zhuǎn)賬代碼怎么寫
分享地址:http://weahome.cn/article/ggiiee.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部