当前位置: 首页 > news >正文

seo企业网站优化30条新闻摘抄

seo企业网站优化,30条新闻摘抄,网页设计代码td,微信公众号做公司网站web3.js Web3 JavaScript app APIweb3.js是一个JavaScript API库#xff0c;一般使得DApp在以太坊上运行web3.js通过RPC调用与本节点通信#xff0c;用于任何暴露了RPC层的以太坊节点之间通信web3包含了eth对象#xff0c;即web3.eth#xff08;专门和以太坊区块链交互一般使得DApp在以太坊上运行web3.js通过RPC调用与本节点通信用于任何暴露了RPC层的以太坊节点之间通信web3包含了eth对象即web3.eth专门和以太坊区块链交互和shh对象即web3.shh用于和Whisper交互,消息传递 DEV模式的私有链 在myDevChain文件夹下面搭建了私有链使用命令启动私有链geth --datadir . --networid 15 console 2output.log输入web3即可查看关于web3的相关组件比如bzz、dp操作数据库的一般是mongdb)、eth等等 web3模块加载 新建一个文件夹使用命令cnpm init初始化初始化完成之后会生成一个package.json的包管理文件然后安装指定的web3模块的版本首先需要将web3模块安装在项目中,使用命令如下--save-dev是将环境添加到开发环境的依赖中去 cnpm install web30.20.1 --save-dev 可以使用此刻最新版1.2.6安装完成之后会在文件夹下面生成node_modules文件夹cd进入之后使用ls命令可以看到web3模块使用命令cnpm list web3查看web3的相关内容查看安装web3的版本 cnpm list web3然后创建一个web3实例设置一个“provider”provider是指服务的启动者使用provider启动接口服务为了保证MetaMask设置好的provider不被覆盖掉在引入web3之前需要进行环境检查以v0.20.1为例 if(typedef web3 ! undefined){web3 new Web3(web3.currentProvider); }else{web3 new Web3(new Web3.providers.HttpProvider(http://localhost:8545)); } 异步回调callback 使用eth.blocknumber()返回区块的高度使用eth.getBlock(x),返回高度为x的区块的具体内容 web3.js设计的最初目的是为了和本地的RPC共同使用所以默认情况下发送的是同步的HTTP请求(同步容易堵塞一般都是采用异步的方式)如果发送的是异步的请求可以在函数的最后一个参数位置上传入一个回调函数。回调函数是可选的optional回调风格一般采用“错误优先”的方式其中function为回调函数 web3.eth.getBlock(48,function(error,result)){if(!error)console.log(JSON.stringify(result));elseconsole.error(error); } 回调Promise事件V1.0.0 应用二进制接口ABI web3.js通过以太坊智能合约的json接口Application Binary InterfaceABI创建一个JavaScript对象用来在js代码中描述函数functions type函数类型默认是“function”也可能是“constructor”constant、payable和stateMutability:函数的状态是可变性inputs、outputs函数输入、函数输出参数描述列表事件events type类型总是“event”inputs输入对象的列表包括name、type和indexed使用 在web3文件夹下面创建合约文件夹mkdir contractcd contract,进入合约文件夹下touch Coin.sol创建合约将remix中的合约拷贝进去执行编译 solcjs --abi Coin.sol就会在当前文件夹下面生成一个以abi结尾的文件查看这个以abi结尾的文件具体内容如下主要包含两类内容事件和函数 [{constant:true,inputs:[{name:,type:address}],name:balances,outputs:[{name:,type:uint256}],payable:false,stateMutability:view,type:function},{constant:true,inputs:[],name:miner,outputs:[{name:,type:address}],payable:false,stateMutability:view,type:function},{constant:false,inputs:[{name:receiver,type:address},{name:amount,type:uint256}],name:mint,outputs:[],payable:false,stateMutability:nonpayable,type:function},{constant:false,inputs:[{name:receiver,type:address},{name:amount,type:uint256}],name:send,outputs:[],payable:false,stateMutability:nonpayable,type:function},{inputs:[],payable:false,stateMutability:nonpayable,type:constructor},{anonymous:false,inputs:[{indexed:false,name:from,type:address},{indexed:false,name:to,type:address},{indexed:false,name:amount,type:uint256}],name:Sent,type:event} ] solcjs --bin Coin.sol生成bin文件bin文件就是提交合约最后部署的文件输入node打开控制台也就是js执行环境  操作引入web3 先在本地启动一个区块链私有链输入node进入 node.js页面输入 var web3 require(web3)输入web3输入var web3 new Web3(new Web3.providers.HttpProvider(http://localhost:8545))输入web3可以查看已经创建好了web3输入web3.isConnected查看是否连接区块链如果返回为false需要在myDevChain文件夹下面启动私有区块链并且开启rpc服务输入web3.version查看web3的版本 批处理请求batch requests 批处理请求允许将请求排序然后一起处理注意批量请求不会更快。实际上在某些情况下一次性发出多个请求反而会更快因为请求是采用异步处理的方式进行的批处理请求主要确保请求的顺序并且采用串行处理的方式 大数处理big numbers JavaScript默认处理的数字精确度比较小所以web3.js会自动添加一个依赖库文件BigNumber专门用于处理大数据对于数值应该习惯将它转化为BigNumber对象来处理 BigNumber.tostring(10)对小数只保留20位浮点精确度。所以推荐做法是内部使用wei来显示余额大整数只有需要给用户看的时候才转化为ether或者其他单位例子 var BigNumber require(bignumber.js) var balance new BigNumber(1231231231123325647673565363777373733833222); balance.plus(21).tostring(10);//或者直接输入balance就可以tostring位数转化进制//s表示正负数1表示正数-1表示负数 //e表示科学技法中的10的位数 //c数组每14位切割一次定义成数组 使用balance.tostring将所有的数字拼接成一个字符串输出也可以在在中加入数字表示进制的转化但是如果改成浮点数会造成精度的缺失 常用的API基本信息查询 不同web3版本之间使用的差异web3.js V1.2.6版本参考链接初始完provider还可以重新设定provider输入geth --help 在API AND CONSOLE OPTIONS选项下面可以看到其余的连接方式除了Http其余的连接方式--ws8546端口推荐、ipcdisable方式进程之间调用 使用命令启动区块链之后会在当前目录下面生成geth.ipc文件。命令为 geth --datadir /Users/chy/Desktop/myeth/chaindata --rpc  --networkid 6666 console 2output.log此处的netwokid是在gensis.json里面写死的如果忘记可以使用cat gensis.json查看chainid后面的内容 web3通用工具方法 以太单位转换 web3.fromWei   web3.toWei数据类型转换 web3.toString  web3.toDecimal   web3.toBigNumber字符编码转换 web3.toHex  web3.toAscii  web3.toUtf8  web3.fromUtf8地址相关 web3.isAddress web3.toChecksumAddress web3.eth 账户相关 如果已经启动了一个监听器再次定义新的监听器需要将先前的监听器干掉使用命令filter.stopWatching()命令 注意 ctrlL清屏web3不同的版本之间命令发生了变化。需要看官方的文档 相关命令 web3.eth.getBlock(2) //2是区块的位置会显示相关的信息但是其包含的交易只显示哈希值web3.eth.getBlock(2true) //2是区块的位置会显示相关的更加具体的信息包括其中交易的哈希值
http://www.zqtcl.cn/news/308110/

相关文章:

  • 网站虚拟空间更新缓存php外贸网站建设
  • 河南省建设执业资格注册中心网站门户定制网站建设公司
  • 网站开发比较厉害wordpress中文 插件
  • 文化投资的微网站怎么做个人微信公众号如何推广
  • 单位的网站怎样设计才美观网页设计图片的代码
  • 长沙专业做网站排名济南手机网站定制费用
  • 西安专题门户响应式网站建设系统网站有哪些
  • 山东省建设局网站监理员考试asp.net mvc6电商网站开发实践
  • 做网站需要提供什么资料网站备案是什么意思
  • 河南网站建设及推广东莞百度代做网站联系方式
  • 大型企业网站制作浦东新区做网站
  • 简单大气网站源码织梦怎么用框架实现在浏览器的地址栏只显示网站的域名而不显示出文件名
  • 电子商务型网站建设线上推广营销策划
  • 网站建设管理工作情况的通报网站开发vs设计报告
  • 嘉定网站网站建设公司官网制作
  • 做旅游广告在哪个网站做效果好财经网站建设
  • 网站样式下载网站地图定位用什么技术做
  • 自己做网站怎么做的百中搜优化软件
  • 南宁建站平台与网站建设相关的论文题目
  • 足球网站建设意义做股权众筹的网站
  • 北京网站建设设计一流的锦州网站建设
  • 专业手机移动网站建设什么网站可以做期刊封面
  • cms建站系统哪个好网站建设 柳州
  • 安徽省住房与城乡建设部网站八戒电影在线观看免费7
  • 江苏省建设考试网站准考证打印佛山网站建设锐艺a068
  • 展示型网站功能如何设计网站风格
  • wordpress图床网站网站什么时候做等保
  • 怎么创办网站浅谈博物馆网站建设的意义
  • 如何做擦边球网站网站seo规划
  • 建站知乎做网站销售工资