Poseidon Docs
SeaverseGithub
  • 入门
    • 简介
    • 安装
    • 示例
    • 注意事项
    • 更新日志
      • v2.0.1
      • v2.0.0
  • EVM
    • (DataClass)
      • ChainInformationData
      • BlockInformationData
      • TransactionReceiptData
      • SignatureData
      • SignedMessageData
    • Chain
      • __init__
      • get_chain_information
      • get_block_information
      • get_transaction_receipt_by_hash
      • get_transaction_receipt_by_block_id_and_index
      • get_balance
      • get_code
      • get_storage
      • dump_storage
    • Account
      • __init__
      • set_need_confirm_before_send_transaction
      • get_self_balance
      • send_transaction
      • send_transaction_by_eip1559
      • deploy_contract
      • sign_message_string
      • sign_message_raw_hash
      • sign_message_hash
      • sign_typed_message
    • Contract
      • __init__
      • call_function
      • call_function_with_parameters
      • read_only_call_function
      • encode_function_calldata
      • decode_function_calldata
    • Utils
      • set_solidity_version
      • compile_solidity_contract
      • import_contract_abi
      • generate_new_account
      • generate_account_from_mnemonic
      • calculate_create_case_contract_address
      • calculate_create2_case_contract_address
      • generate_signature_data_with_signature
      • generate_signature_data_with_rsv
      • recover_message_string
      • recover_message_raw_hash
      • recover_message_hash
      • recover_typed_message
      • convert_equivalent_signature
      • assembly_to_bytecode_legacy
      • bytecode_to_assembly_legacy
  • Solana
    • (stay tuned)
  • TON
    • (stay tuned)
  • Sui
    • (stay tuned)
由 GitBook 提供支持
在本页
  • 方法定义
  • 参数说明
  • 返回值
  • 示例代码

这有帮助吗?

在GitHub上编辑
  1. EVM
  2. Account

send_transaction

发送自定义 EIP-155 交易。

方法定义

def send_transaction(self, to: Optional[ChecksumAddress] = None, data: HexBytes = HexBytes("0x"), value: Wei = Wei(0), gas_price: Optional[Wei] = None, gas_limit: int = 500000) -> Optional[TransactionReceiptData]

参数说明

参数
类型
说明

to

Optional[ChecksumAddress]

接收者地址,为 None 时表示创建合约

data

HexBytes

交易数据,默认为空

value

Wei

发送的原生代币数量,默认为 0

gas_price

Optional[Wei]

Gas 价格,默认使用链上当前 gas_price

gas_limit

int

Gas 最大使用量,默认为 500000

返回值

返回 TransactionReceiptData 对象,包含以下字段:

字段
类型
说明

transaction_hash

HexBytes

交易哈希

block_number

BlockNumber

区块高度

transaction_index

int

交易在区块中的索引

transaction_status

int

交易状态(1 成功,0 失败)

transaction_type

int

交易类型

action

str

交易动作类型

sender

ChecksumAddress

发送者地址

to

ChecksumAddress

接收者地址

nonce

Nonce

交易序号

value

Wei

转账金额

gas_used

int

实际使用的 Gas

gas_limit

int

Gas 上限

gas_price

Optional[Wei]

Gas 价格

contract_address

Optional[ChecksumAddress]

部署的合约地址(仅合约创建交易)

logs

Optional[List[LogReceipt]]

交易日志

input_data

HexBytes

交易输入数据

r

HexBytes

签名 r 值

s

HexBytes

签名 s 值

v

HexBytes

签名 v 值

示例代码

# 发送 ETH
receipt = account.send_transaction(
    to="0x...",
    value=Web3.to_wei(0.1, 'ether')
)
if receipt and receipt.transaction_status:
    print(f"Transaction successful: {receipt.transaction_hash.hex()}")

# 调用合约函数
contract_function_data = HexBytes("0x...")  # 合约函数的编码数据
receipt = account.send_transaction(
    to="0x...",  # 合约地址
    data=contract_function_data,
    gas_limit=100000
)
上一页get_self_balance下一页send_transaction_by_eip1559

最后更新于7个月前

这有帮助吗?