首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web3.php --如何调用一个变异状态的契约函数?

web3.php --如何调用一个变异状态的契约函数?
EN

Ethereum用户
提问于 2020-01-21 11:48:59
回答 1查看 1.4K关注 0票数 1

我正在创建web3实例

代码语言:javascript
复制
            $web3 = new Web3(
                        new HttpProvider(
                            new HttpRequestManager(
                                config('infura.endpoint'),       // url
                                5.0                              // timeout
                            )
                        )
                    )
            ;

然后我的合同实例

代码语言:javascript
复制
$contract = new Contract($web3->provider, $abi);

我必须调用这个函数

代码语言:javascript
复制
    {
        "constant": false,
        "inputs": [
            {
                "internalType": "uint256",
                "name": "_index",
                "type": "uint256"
            },
            {
                "internalType": "string",
                "name": "_data_to_store",
                "type": "string"
            }
        ],
        "name": "set",
        "outputs": [],
        "payable": false,
        "stateMutability": "nonpayable",
        "type": "function"
    },

我在努力

代码语言:javascript
复制
$contract->at(config('infura.contract_address'))
    ->send('set', 22, 'hello world', function($error, $result) {
            // this is Laravel dump to screen and die command
            dd("error", $error, "result", $result);
        }
    )
;

问题是发送会抛出异常。异常的消息是

“错误类型的eth_sendTransaction方法参数0”

请你解释一下如何使用发送方法好吗?

编辑1:

我尝试了另一种语法

代码语言:javascript
复制
$contract->at(config('infura.contract_address'))
    ->send('set', 22, 'hello world', [ 'from' => config('infura.wallet_address') ], function($error, $result) {
            dd("error", $error, "result", $result);
        }
    )
;

但我有一个更有趣的不同的例外

web3.php\src\RequestManagers\HttpRequestManager.php中不存在/不可用的方法eth_sendTransaction

EN

回答 1

Ethereum用户

发布于 2020-01-22 08:46:18

我发现了自己的问题。

恩弗拉不支持未经签署的交易。

实际上,我还没有找到如何使用sendRawTransactions (和签名)。但这是另一个问题

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

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

复制
相关文章

相似问题

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