Viết (Phí ủy quyền)
Bạn có thể thực hiện một "giao dịch" bao gồm yêu cầu thanh toán cho người trả phí khi bạn muốn thực hiện Hợp đồng thông minh.
Nhập các gói @kaiachain/viem-ext để thêm các tính năng kaia trên web3
Khởi tạo một máy khách công khai để tương tác chỉ đọc với blockchain Kaia.
Thiết lập ví người gửi và người trả phí bằng createWalletClient, được cấu hình với chuỗi Kairos, phương thức vận chuyển HTTP và khóa riêng của người gửi được chuyển đổi thành một tài khoản.
Đặt địa chỉ hợp đồng mà bạn muốn thực hiện vào trường đến và đặt ABI.
Mã hóa tên hàm và tham số bằng hàm encodeFunctionData
Tạo yêu cầu giao dịch để viết hợp đồng thông minh bằng cách sử dụng prepareTransactionRequest, chỉ định tài khoản người gửi, địa chỉ người nhận, giá trị cần chuyển (0 KLAY trong ví dụ này) và loại giao dịch (TxType.SmartContractExecution)
Ký giao dịch bằng phương thức signTransaction của ví khách hàng.
Người gửi gửi giao dịch đến blockchain Kaia bằng cách sử dụng klay_sendRawTransaction
và kết quả (thường là hàm băm giao dịch) sẽ được ghi lại. Người gửi trả phí giao dịch.
Chuẩn bị giao dịch được ủy quyền phí (FeeDelegatedSmartContractExecution
) để gọi cùng hàm setNumber
trên hợp đồng. Thiết lập tương tự như giao dịch không ủy quyền phí, nhưng người trả phí ký giao dịch để chi trả phí.
Người gửi ký giao dịch trước, người trả phí thêm chữ ký của họ và giao dịch được gửi đến blockchain Kaia.
Sử dụng máy khách công khai để đọc giá trị của biến số từ hợp đồng bằng cách gọi hàm số
(hàm xem không sửa đổi trạng thái).