怎么让web3.js调用合约方法执行多笔交易在一个交易hash中? 10C

怎么让web3.js调用合约方法执行多笔交易在一个交易hash中?之前通过智能合约调用已部署合约实现的,后来发现需要payable方法,而已经部署的合约没有该方法,然后就很尴尬了图片说明图片说明这两个是之前用合约调用已部署合约

下面就是用web3.js调用的效果图片说明图片说明

0

1个回答

0
qq_41595512
joenhon 额, 我找到原因了,public函数是可以被合约调用的,不过我忘了给权限了
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
web3.js与合约交互
web3.js是以太坊提供的一个Javascript库,它封装了以太坊的JSON RPC API,提供了一系列与区块链交互的Javascript对象和函数,包括查看网络状态,查看本地账户、查看交易和区块、发送交易、编译/部署智能合约、调用智能合约等,其中最重要的就是与智能合约交互的API。下面就介绍如何使用web3.js提供的接口调用智能合约。系统和软件Ubuntu 16.04 64位 nodej...
智能合约 空投 nodejs调用web3js进行批量转账
====================== 2018年11月更新,已换工作方向,不再做智能合约相关 ======================   4月底换了份工作,新公司发行了一个基于eth的代币。现在我的工作内容除了写网站后端,还负责空投。 在空投这方面,目前我使用的方法有两种:使用nodejs调用web3js接口,或者使用java调用web3j。 前段时间公司代币要上fcoi...
web3j采用call方式查询智能合约执行结果
    以太坊在调用智能合约中的函数时,即使交易成功发布到区块链上,但是如果合约参数检查出错,交易执行会失败,这个时候调用端仍然能够查询到交易被打包,但是交易执行结果跟期望的会不相符。 假设一个智能合约中有一个transfer函数: function transfer(address to, uint256 val) public view returns(bool) { ...
以太坊智能合约代币应用开发(5)-web3调用智能代币合约
一、概述在上面的文章中已经说明了web3与geth的交互,下面将使用web3访问我们已经部署好的代币合约二、应用实践1、新建文件在nodejs项目下新建一个contract.js 文件2、创建合约实例Web3 = require("web3") var web3 = new Web3(Web3.givenProvider||'http://127.0.0.1:8545'); web3.setPro...
使用web3进行合约部署调用以及监听
  token合约是官方提供的一个样例,这里给出我修改过的版本,方便演示. contract MyToken { /* Public variables of the token */ string public name; string public symbol; uint8 public decimals; /* This creates an...
使用 Infura 和 web3.js 调用智能合约
Infura 提供公开的 Ethereum 主网和测试网络节点。到 Infura 官网申请,输入一些基本资料和 Email,就可以收到 API-key。infura使用 RPC 查询合约内存储的状态最常需要查询的状态就是 Token 的余额。就用 EOS Token 合约做为示例来看看。取得取得合约信息可以通过 Etherscan,大部分知名的合约可以直接搜索到。etherscan要调用合约,至少...
使用 Infura 和 web3.js 呼叫合约
如果你希望马上开始学习以太坊DApp开发,可以访问汇智网提供的出色的在线互动教程: 以太坊DApp实战入门教程 以太坊去中心化电商应用开发实战 如果你希望了解如何部署合约,可以查看另一篇文章:在truffle中使用infura部署以太坊智能合约。 Infura 提供公开的 Ethereum 主网和测试网络节点。到 Infura 官网申请,只要输入一点基本资料和...
智能合约 web3.js ABI Address三者的关系
web3.js是以太坊提供的一个Javascript库,它封装了以太坊的JSON RPC API,提供了一系列与区块链交互的Javascript对象和函数,包括查看网络状态,查看本地账户、查看交易和区块、发送交易、编译/部署智能合约、调用智能合约等,其中最重要的就是与智能合约交互的API。下面就介绍如何使用web3.js提供的接口调用智能合约。系统和软件Ubuntu 16.04 64位 nodej...
以太坊的合约调用和交易执行
合约部署到以太坊的区块链上后,是为了让用户调用和执行的。与合约创建一样,合约的执行也是由交易驱动的,如图: 对于驱动合约执行的交易,有几个关键点: 1、合约在创建时,会生成一个合约地址,所以,通过交易调用合约的时候,就以合约地址为目的地址; 2、在交易的data域,会标明要调用合约的哪个函数,并且提供了该函数所需要的参数; 3、调用合约的交易,同样可以发送一笔以太币给合约,金额在v...
Web3.js 发送ERC20转账交易
web3 1.0 版本以下的用法: var Web3 = require("web3"); var Tx = require('ethereumjs-tx'); var web3 = new Web3(); // 连接测试网络 web3.setProvider(new web3.providers.HttpProvider("https://ropst...
序列5 Solidity与web3.js - 智能合约的编写、编译、部署与执行
有兴趣朋友也可以进一步关注公众号“架构之道与术”, 获取原文。 或扫描如下二维码: 在序列4 EVM,Solidity和其它各种编程语言中,我们介绍了EVM和Solidity语言。这1节,详细来介绍Solidity语言的语法,以及如何部署、执行智能合约。 整体介绍 在整个过程中,涉及到Solidity和web3.js 2个东西。 首先用Solidity语言编写源代码(相应的IDE编辑工...
web3.js(三)查询智能合约币数量(erc20)
需要获取到智能合约地址+智能合约ABI 1.打开https://etherscan.io/搜索cmt,跳转到该页面,点击红色区域,跳转到智能合约地址 2.address是智能合约地址,点击Contract Source 获取ABI 3.code:调用cmt智能合约的方法balanceOf() const Web3 = require("web3"); const BigN...
web3j 合约调用两种方法比较
web3j 合约调用两种方法比较 知识储备 以太坊普通交易参数 to //对方地址 gasLimit //gas上限 gasPrice //gas价格 value //eth转账数量(单位 wei) data //0x 普通转账用不到这个字段 以太坊合约调用交易参数 to //合约地址 gasLimit //gas上限 gasPrice //gas价格 ...
以太坊: ETH 发送交易 sendRawTransaction 方法数据的签名 和 验证过程
作者:林冠宏 / 指尖下的幽灵 掘金:https://juejin.im/user/587f0dfe128fe100570ce2d8 博客:http://www.cnblogs.com/linguanh/ GitHub : https://github.com/af913337456/ 腾讯云专栏: https://cloud.tencent.com/developer/user...
web3.js签名广播交易到以太坊网络以及web3版本1.0和0.20的区别
一、web3.js介绍          web3.js是以太坊官方的Javascript API,可以帮助智能合约开发者使用HTTP或者IPC与本地的或者远程的以太坊节点交互。实际上就是web3.js是一个库集合,允许您使用HTTP或IPC连接与本地或远程以太它节点进行交互。为了让你的Ðapp运行上以太坊,一种选择是使用web3.js library提供的web3。对象。底层实现上,它通过RP...
Ropsten部署智能合约-3.3
先来解决3.2中myetherwallet中遇到的问题,为什么不能add custom token呢? 首先要选择Network Ropsten (infu.io)网络,下图右上角 这样之后就可以顺利添加该账户所有的合约代币  可以向合约转账代币,原来我错误的理解为代币是合约所有的,其正确的理解代码是合约所有的,需要从账户向合约转账代币。 注意上图中 To Address: ...
使用Web3.js查询以太币和代币余额以及转账
前言 web3.js文档http://web3js.readthedocs.io/en/1.0/ 前面的文章也提到了,使用web3.js可以与以太坊进行互动。这篇文章的主要内容如下: 解决web3.js版本问题 2.使用web3.js查询以太币及代币余额,以及进行以太币和代币转账 1.web3.js版本问题 现在使用npm install web3安装的web3.js,会发现node_m...
web3j调用合约的两种方式以及eth转账
以ERC20转账为例 token转账参数即data字段 String methodName = "transfer"; List<Type> inputParameters = new ArrayList<>(); List<TypeReference<?>> outputParameters = new A...
JAVA 通过 web3j调用智能合约函数gas不足导致交易被回滚的解决办法
JAVA 通过 web3j调用智能合约函数gas不足会导致交易被回滚。问题现象就是调用智能合约函数后,然后再调用对应的查询函数,去查询刚才要求写入的数据,发现数据没写入成功,查询出来的都是写零或空(数字状态变量为零字符串状态变量为空)。出来办法:在JAVA代码中加载合约是设置一个很高的 gaslimit。如下面的代码设置 gaslimit 为 100万。contract2 = OrderData....
以太坊EVM执行交易过程解释
三个需要理解清楚的概念: (1)交易:区块链由区块(Block)组成,而区块中打包一定数量的交易(Transaction),交易分两种:       1.1一个单纯的外部账户之间转账操作       1.2 创建或者调用智能合约的操作       无论是哪一种,EVM在运行(excute)交易时都会创建合约(Contract)。 (2)账户:一笔交易包含发送方(sender) 接收方(r...
以太坊智能合约库ethers(基于web3.js封装,比web3.js更容易操作)中Providers vs Signers的区别(务必注意,有坑!!!)
参考ethers库的官方文档(合约介绍):https://docs.ethers.io/ethers.js/html/api-contract.html#connecting-to-existing-contracts 在ethers库中这里非常重要: providerOrSigner参数解释: provider:提供者(节点)----只能读取区块链的数据,无需发送交易! Signe...
web3j教程:以太坊过滤器(filter)筛选和智能合约事件(event)监听
web3j过滤器提供以太坊网络发生的某些事件的通知,对java和安卓程序员来说很有用。在Ethereum以太坊中支持三类过滤器: 块滤波器(Block filters) 未决交易过滤器(Pending transaction filters) 主题过滤器(Topic filters) 块过滤器和未决交易过滤器提供了在网络上创建新交易或块的通知。 主题过滤器更灵活。允许根据提供的特定标准创...
与智能合约交互
与智能合约交互 概述 为了与合约交互而向Ethereum网络编写原始请求,那么您很快就会意识到,编写这些请求是笨重而麻烦的。 同样,你可能会发现管理每个请求的状态非常复杂。幸运的是,Truffle 为您解决了这种复杂性,使得与合约的交互变得轻而易举。 读写数据 Ethereum网络对向网络写入数据和从网络读取数据进行了区分,这种区分在如何编写应用程序中起着重要作用。 通常,写入...
用web3.js追踪区块链中的以太坊交易
市场上dApp和数字货币的数量正在迅速增长,每年新增的去中心化应用程序超过1000,新数字货币超过500个,以及围绕这他们构建的各种在线服务。区块链技术给我们的生活带来了许多令人瞩目的新特点和好处。然而想法总是相同的,一个交易应该被发送到一个区块链中,并被挖掘,目的是加密的转账或执行任何其他功能的智能合约。 对于某些应用程序和在线服务,了解用户钱包的当前状态或由用户的行为引起的任何交易都是至关重...
用web3.js与智能合约交互
首先放上官方API:https://web3js.readthedocs.io/en/1.0/index.html工具:Truffle v4.0.4  ganache-1.1.0-beta(ui界面版)nodejs 8.9.4npm 5.6.0   web3 1.0.0思路:1、先用truffle创建一个以太坊智能合约项目,部署在ganache测试网络。2、用npm创建另外一个项目,使用web3和...
【智能合约】客户端和web端对智能合约的事件Event进行调用的代码示例
客户端和web端对智能合约的事件Event进行调用的代码示例web truffle按官网的例子 http://truffleframework.com/boxes/pet-shoptruffle作为一个运行测试框架,用的也是web3对智能合约进行调用。文件所在的位置src/js/app.js initWeb3: function() { // web3入口 if (type
通过web3与合约实例solidity交互注意事项
通过web3与合约实例solidity交互,通过call方法进行调用,如果合约中有msg.sender,需要指定from!如果是send方法,注意指定转账金额。
如何使用Web3.js API 在页面中进行转账
本文介绍如何使用Web3.js API 在页面中进行转账,是我翻译的文档Web3.js 0.2x 中文版 及 区块链全栈-以太坊DAPP开发实战 中Demo的文章说明。 写在前面 阅读本文前,你应该对以太坊、智能合约、钱包的概念有所了解,如果你还不了解,建议你先看以太坊是什么 除此之外,你最好还了解一些HTML及JavaScript知识。 转账UI 页面的编写 转账UI主体的...
使用java实现以太坊并发发送交易
大家都知道使用web3j实现以太坊的功能。 查询了很多文章,对于全自动发送交易的文章少之又少,尤其是一个账户同时发送多笔交易的方式。(容易 nonce to low 的错误) 这里我简单说说我的思路。 基本知识: 以太坊发送交易需要带上nonce 如果nonce 小于已经成功发送交易的nonce那么就会交易失败 每次交易成功后,获得的nonce就会相比之前的交易nonce多1 (其实交...
EVM虚拟机合约的执行过程
文章目录简单合约实例汇编分析虚拟机的优化字节码优化Gas 的使用总结 首先列出EVM虚拟机汇编指令集:https://gist.github.com/hayeah/bd37a123c02fecffbe629bf98a8391df 常用汇编指令: https://blog.csdn.net/qq_33733970/article/details/78572733 https://blog.cs...
web3j监听智能合约的event事件
假设智能合约中定义了一个事件:pragma solidity ^0.4.0; contract Transfer{ event transfer(address indexed _from, address indexed _to, uint indexed value); function deposit() payable { address current = this;...
使用web3.js进行编译发布及调用智能合约
简要:web3.js 是一个库的集合,允许您使用HTTP或IPC连接与本地或远程以太节点进行交互。solc.js 是solidity的编译器。官方推荐编译方式。Ganache CLI是以太坊开发工具Truffle套件的一部分,是Ganache的命令行版本。Ganache CLI使用ethereumjs来模拟完整的客户端行为,并使开发以太坊应用程序更快,更轻松,更安全。它还包括所有流行的RPC功能和...
链客Hash码查询交易是否成功
fabric-sdk-java应用到项目的是连接到网络中的某一个节点呢(可能是orderer也可能是peer)还是说要同时连接网络中的所有节点。 答:sdk在某一时刻只能连接到一个节点。 80.交易后,获得一个一个hash码,如何通过hash码查询这个交易成功失败? 答:etherscan.io 想了解更多区块链知识,请百度【链客区块链技术问答社区】进入官网 企鹅群:725414372 ...
如何使用Web3在浏览器中与智能合约进行交互
2018-4-20 技术文章 Web3.js是以太坊官方的Javascript API,可以帮助智能合约开发者使用HTTP或者IPC与本地的或者远程的以太坊节点交互。实际上就是一个库的集合,主要包括下面几个库: web3-eth用来与以太坊区块链和智能合约交互 web3-shh用来控制whisper协议与p2p通信以及广播 web3-bzz用来与swarm协议交互 web3-utils包含了...
比特币交易处理方式,每秒7笔
参考:比特币为什么要扩容?比特币为什么是10分钟左右生成一个区块,而不是20分钟,30分钟?目前的比特币系统,每一个区块的大小是1MB,每10分钟产生一个区块,平均每一个最基本的比特币交易的大小是大约是250字节,因此每秒可以处理的交易数量:每个区块的交易数量:1 * 1024 * 1024 / 250 = 4194每秒处理的交易数量:4194 / (10 * 60 ) = 6.99 ,约为每秒7...
web3.js与智能合约交互
web3.js简介    web3.js是以太坊提供的一个javascript库提供了一系列与区块链交互的JavaScript对象和函数,其中最重要的就是和智能合约交互的API;创建truffle项目首先我们需要创建一个简单的智能合约,并部署到Ganache上。1. 在一个你比较喜欢的地方创建一个web3_test文件mkdir web3_test && cd web3_test2...
web3 0.20对以太坊块的监听
本脚本是本人通过对以太坊了解,自己写的块交易监听实现
solidity教程(四)僵尸作战系统
title: solidity教程(四)交易 tags: solidity,eth 声明:本系列教程是整理cryptozombies 而来 https://cryptozombies.io/zh Lesson 4: 僵尸作战系统 这一刻终于来了, 人类…… 是时候让你的僵尸战斗了! 不过僵尸大战并不适合胆小的人…… 在这一课, 我们将综合利用在前面课程中学到的许多知识,创建一个僵尸作战系统...
web3j教程:java和android如何使用web3j开发以太坊智能合约并进行交易
从广义上讲,有web3j支持三种类型的以太坊交易: 1.以太币从一方交易到另一方 2.创建一个智能合约 3.与智能合约交易 为了进行这些交易,必须有以太币(以太坊区块链的代币)存在于交易发生的以太坊账户中。这是为了支付gas成本,这是为支付参与交易的以太坊客户端的交易执行成本,支付了这个成本就能将结果提交到以太坊区块链上。获得以太币的说明下文会说到。 此外,我们还可以查询智能合约的状态。...
web3.js中estimateGas如何计算智能合约消耗的gas量
我们可使用web3.js框架的estimateGas函数获得一个以太坊智能合约的Gas估计值 ,通过执行一个消息调用或交易,该消息调用或交易直接在节点的VM中执行,并未在区块链中确认,函数会返回估算使用的gas量。函数调用:web3.eth.estimateGas(callObject [, callback])参数:在 web3.eth.sendTransaction 中, 参数大都是可选的。1...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 区块链交易 区块链数字交易

相似问题

1
如何用python的opencv识别一个有背景的图片中的多个物体?
1
关键字搜索 给关键字加颜色 怎么实现 向爱奇艺搜索框一样
2
用java读取一个文件夹下的文件,同名的图片和文本建立一个关系
3
在Java里比如这个类: 为什么输出类的时候是toString方法的返回值而不是get方法的
4
如何用一个SQL实现图中的答案123456!!!!!!!!!!!!!!!!
3
TP3.2 __PUBLIC__多域名解析 路径错误 怎么更改配置才能具有全局效果
1
关于OGRE中CG代码错误问题?error C6014: Required output 'POSITION' not written
2
这是一个有关魔方的问题,请问怎么计算旋转的步数
2
一个有关GPA的计算方面的数学的问题,请问下大家是怎么解决的??
1
Java怎么将我计算的数据以表格形式输出?
1
Birt中Image组件如何使用
1
看到一个问题,我想知道是怎么实现的
0
使用spring boot 中xml报错,求解啊
1
求一个fpga课程设计电路图 约束 和逻辑综合 脉冲宽度测量电路 verilog语言的
2
微信小程序,在一个表单界面,将图片和其他数据一起存入云数据库中,怎么上传图片的存储路径
1
Alertdialog中加载webview地址问题
2
求一个asp.net多图片上传带预览的控件,最好是有后台引用代码的,蟹蟹各位了
1
求助关于idea 自动创建单元测试时 没有搜寻到方法的问题
3
请问如何用php对一个大图进行局部放大、缩小、定位、鼠标位置缩放
1
Oracle如何将一个字段的每一条数据添加为一个新字段