const transactionParameters = {
nonce: '0x00', // ignored by TokenPocket Extension
gasPrice: '0x09184e72a000', // customizable by user during TokenPocket Extension confirmation.
gas: '0x2710', // customizable by user during TokenPocket Extension confirmation.
to: '0x0000000000000000000000000000000000000000', // Required except during contract publications.
from: ethereum.selectedAddress, // must match user's active address.
value: '0x00', // Only required to send ether to the recipient from the initiating external account.
data:
'0x7f7465737432000000000000000000000000000000000000000000000000000000600057', // Optional, but used for defining smart contract creation and interaction.
chainId: '0x3', // Used to prevent transaction reuse across blockchains. Auto-filled by TokenPocket Extension.
};
// txHash is a hex string
// As with any RPC call, it may throw an error
const txHash = await ethereum.request({
method: 'eth_sendTransaction',
params: [transactionParameters],
});
在以太坊中,每笔交易都指定了它所消耗的 gas price。为了最大化他们的利润,区块生产者将在创建下一个区块时首先选择具有更高 gas price 的待处理交易。这意味着较高的 gas price 通常会使您的交易处理得更快,但代价是更高的交易费用。请注意,这可能不适用于例如第 2 层网络,它可能具有恒定的 gas price或根本没有 gas price。
换句话说,虽然您可以在 TokenPocket Extension 的默认网络上忽略此参数,但您可能希望在您的应用程序中包含它。在我们的默认网络上,TokenPocket Extension 允许用户在“慢”、“中”和“快”选项之间选择他们的 gas price。
Gas Limit [可选]
可选参数。对 Dapp 开发人员很少有用。
gas limit 是一个高度可选的参数,我们会自动为它计算一个合理的价格。 如果出于某种原因您自定义了 gas limit,你的智能合约可能会受益于此,获得更少的gas消耗。
To [半可选]
十六进制编码的以太坊地址。与接收方的交易(除合约创建之外的所有交易)是必需的。
Value [可选]
Data [半可选]
创建智能合约所必需的。
Chain ID [当前忽略]
Chain ID 当前由用户当前选择的网络在ethereum.networkVersion. 将来我们可能会允许一种方式同时连接到多个网络,此时此参数将变得很重要,因此养成现在包含的习惯可能会很有用。