首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

以太坊·将数据写入到区块链中

Netkiller Blockchain 手札Mr.NeoChan,陈景峯(BG7NYT)

文档始创于2018-02-10

版权 2018 Netkiller(Neo Chan). All rights reserved.

版权声明

转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。

5.5. 实用例子

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!!!' } 就是保存在区块链中的数据。

Donations (打赏)

We accept PayPal through:

https://www.paypal.me/netkiller

http://www.netkiller.cn/home/donations.html

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180219G03QIN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券