首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不通过nodejs web3提交区块链的智能合同事务

不通过nodejs web3提交区块链的智能合同事务
EN

Ethereum用户
提问于 2017-07-03 16:19:39
回答 1查看 113关注 0票数 0

当我调用智能契约的任何功能时,它会返回它想要的内容,但在我查询它时没有反映任何变化。这就像事务本身从未发生过一样,尽管它使用test给出了智能contract.Im的正确结果。在松露中测试了合同。和坚固的浏览器。这是我编写的代码的简化版本。

代码语言:javascript
复制
var web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));

console.log("Talking with a geth server", web3.version.api);

function test(){

var sourceCode = fs.readFileSync('contracts/digitalToken.sol','utf8')

var compiled = solc.compile(sourceCode);

console.log(compiled.contracts[":digitalToken"]);

var abiArray = compiled.contracts[":digitalToken"].interface;

abiArray = JSON.parse(abiArray);

var MyContract = web3.eth.contract(abiArray);

var address = "0x1f81b5fa31d049b70556628cc01f22d362c41084";

var contractInstance = MyContract.at(address);

console.log(contractInstance);

var value=executeAddvid(contractInstance)

  console.log({message: "Success",value:value});

  console.log('after passing--');

  console.log({message: "Success",value:value});
var value1=readVidByUser(contractInstance);

console.log({message: "Success",value:value1});

  console.log('after passing--');

  console.log({message: "Success",value:value1});
}

function executeAddvid(contractInstance){

record = contractInstance;

return record.addVid.call('0x0000000000000000000000000000000000000124',5,"ronaldo","0xc9f5a0572d95d5dea1331edcc192dacef51ecbb7",1000000000000000000);

}

function readVidByUser(contractInstance){

record = contractInstance;

return record.readVidByUser.call('0x0000000000000000000000000000000000000124','0x1f81b5fa31d049b70556628cc01f22d362c41084');

}

test();
EN

回答 1

Ethereum用户

回答已采纳

发布于 2017-07-03 16:39:33

当您使用.call时,就像在record.addVid.call(...)中一样,您不是在发送事务,而是在本地执行调用。对于要使用.transact的状态更改函数,请参见

代码语言:javascript
复制
record.addVid.call('0x0000000000000000000000000000000000000124',5,"ronaldo","0xc9f5a0572d95d5dea1331edcc192dacef51ecbb7",1000000000000000000, {from:eth.coinbase})
票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/19324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档