新西兰服务器

以太坊如何将自定义数据写入到区块链中


以太坊如何将自定义数据写入到区块链中

发布时间:2021-12-25 12:39:59 来源:高防服务器网 阅读:71 作者:小新 栏目:互联网科技

小编给大家分享一下以太坊如何将自定义数据写入到区块链中,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

 实用例子

5.5.1. 数据写入到区块链中

做一笔交易,并写入数据到区块链中

let Web3 = require("web3");  let fs = require("fs");  let web3 = new Web3("http://localhost:8545");    let log = {      time:(new Date).getTime(),      type:"info",      msg:"Web3 Test!!!"  };  let str = JSON.stringify(log);  console.log(str);  let data = Buffer.from(str).toString('hex');  data = '0x'+data;  console.log(data);    //将数据写入到交易中  let coinbase = "0x5c18a33df2cc41a1beddc91133b8422e89f041b7"  console.log(coinbase)  let user1 = "0xc2b9e316f246d35052118e51b55c75bfe99d247e";  web3.eth.personal.unlockAccount(coinbase, "chen1980");  let address = web3.eth.sendTransaction({      from:coinbase,      to:user1,      value:'0x00',      data:data  },function(error, hash){      console.log(hash);  });

运行上面程序,会产生一个交易,记下hash值,然后启动挖矿。

> miner.start();  null  # 过一段时间后停止  > miner.stop();  true

然后查看这比交易

let Web3 = require("web3");  let fs = require("fs");  let web3 = new Web3("http://localhost:8545");  let address ="0xb15681eb4bdb6b9670d305fb341ebbc95d45c2ede0ea5034ef432b74f30b1b4f";  //从交易地址获取数据  web3.eth.getTransaction(address).then(console.log);    web3.eth.getTransaction(address,function(error, result){      //console.log(result);      inputData = result.input;      res_str = Buffer.from(inputData.replace('0x',''),'hex').toString();      res_json = JSON.parse(res_str);      console.log(res_json);  });

结果输出

{ blockHash: '0x78dacc2af60900d2e4cae90b71e27446e6e883df36c53f21cbc9e071f7a586f4',    blockNumber: 1258,    from: '0x5c18a33DF2cc41a1bedDC91133b8422e89f041B7',    gas: 90000,    gasPrice: '18000000000',    hash: '0xb15681eb4bdb6b9670d305fb341ebbc95d45c2ede0ea5034ef432b74f30b1b4f',    input: '0x7b2274696d65223a313531383933313435323537372c2274797065223a22696e666f222c226d7367223a22576562332054657374212121227d',    nonce: 4,    to: '0xc2b9e316F246d35052118E51B55C75BfE99d247e',    transactionIndex: 0,    value: '0',    v: '0x41',    r: '0x7fcd86c7fd975a0e98bd0e61a99da950b0155cd6c4581fefa4defbdcd404a930',    s: '0x16f14ce1fbfadb9d59f343f8ac235cdd73dcedec5db1025ef91206b8bb17a827' }  { time: 1518931452577, type: 'info', msg: 'Web3 Test!!!' }

{ time: 1518931452577, type: 'info', msg: 'Web3 Test!!!' } 就是保存在区块链中的数据。

以上是“以太坊如何将自定义数据写入到区块链中”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注高防服务器网行业资讯频道!

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[