首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >平价私有链:合同部署事务未被挖掘

问平价私有链:合同部署事务未被挖掘
EN

Ethereum用户
提问于 2017-02-24 18:45:20
回答 1查看 908关注 0票数 4

我有一些简单的可靠代码来测试契约部署和调用。它有将值写入存储的方法,以及读取值的方法。这与一家私人连锁公司和一个普通客户的关系非常好。

在切换到奇偶客户端和授权证明链之后,合同没有被部署,因为部署它的事务没有被挖掘。我已经试着把汽油增加到6亿升,gasPrice提供给10格威。以太的简单转移是经过的。同时,成功地编译了Solidity代码。尝试用发送帐户解锁,并在浏览器UI中的确认窗口中输入帐户密码。

合同代码:

代码语言:javascript
复制
pragma solidity ^0.4.7;

contract owned {
  address owner;
  function owned() {
    owner = msg.sender;
  }
}

contract mortal is owned {
  function kill() {
    if (msg.sender == owner) selfdestruct(owner);
  }
}

contract IdMgmt is mortal {

  struct acl {
    string dataType;
    string permissions;
  }

  mapping (address => acl) public aclOf;

  function IdMgmt() { }

  function createId(address _user, string _dataType, string _permissions) {
    aclOf[_user].dataType = _dataType;
    aclOf[_user].permissions = _permissions;
  }

  function getPermissions(address _user, string _dataType) constant
    returns (string userPermissions) {

    if (stringsEqual(aclOf[_user].dataType, _dataType)) {
      userPermissions = aclOf[_user].permissions;
    }
    else {
      userPermissions = "NO DATA";
    }
  }

  function stringsEqual(string _a, string _b) internal returns (bool) {
    bytes memory a = bytes(_a);
    bytes memory b = bytes(_b);
    if (a.length != b.length) {
      return false;
    }
    for (uint i = 0; i < a.length; i ++) {
      if (a[i] != b[i]) return false;
    }
    return true;
  }
}

还有什么其他信息可以帮助我们找到根本原因呢?

EN

回答 1

Ethereum用户

回答已采纳

发布于 2017-03-23 19:27:19

当我尝试使用JSON或奇偶浏览器UI部署契约时,就发现了这个问题。相反,我尝试使用奇偶校验的web3 Javascript (将Javascript代码作为NodeJS应用程序运行)进行部署,并且这种部署始终有效。挖掘契约部署事务,并在指定的地址存在代码。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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