Gói caver.abi cho phép bạn giải mã và mã hóa các tham số bằng ABI (Giao diện nhị phân ứng dụng). Gói này dùng để gọi các hàm của một hợp đồng thông minh đã triển khai.
Mã hóa chữ ký hàm thành chữ ký ABI - là 4 byte đầu tiên của hàm băm sha3 của tên hàm bao gồm các loại tham số.
Tham số
Tên
type
Mô tả
functionSignature
chuỗi | đối tượng
Chữ ký hàm hoặc đối tượng giao diện JSON của hàm cần mã hóa. Nếu đây là một chuỗi thì chuỗi này phải ở dạng function(type, type,...), vd: myFunction(uint256,uint32[],bytes10,bytes)
Giá trị trả về
type
Mô tả
chuỗi
Chữ ký ABI của hàm.
Ví dụ
// Từ một đối tượng giao diện JSON>caver.abi.encodeFunctionSignature({name:'myMethod',type:'function',inputs: [{type:'uint256',name:'myNumber'},{type:'string',name:'mystring'}]})'0x24ee0097'// Từ một chữ ký hàm>caver.abi.encodeFunctionSignature('myMethod(uint256,string)')'0x24ee0097'
encodeEventSignature
Mã hóa chữ ký sự kiện thành chữ ký ABI - là hàm băm sha3 của tên sự kiện bao gồm các loại tham số đầu vào.
Tham số
Tên
type
Mô tả
eventSignature
chuỗi | đối tượng
Chữ ký sự kiện hoặc đối tượng giao diện JSON của sự kiện cần mã hóa. Nếu đây là một chuỗi thì chuỗi này phải ở dạng event(type,type,...), vd: myEvent(uint256,uint32[],bytes10,bytes)
Giá trị trả về
Loại
Mô tả
chuỗi
Chữ ký ABI của sự kiện.
Ví dụ
encodeParameter
Mã hóa một tham số dưới dạng ABI dựa trên loại của tham số đó.
LƯU Ý Loại tuple được hỗ trợ kể từ caver-js phiên bản v1.6.0. Để biết thêm thông tin chi tiết về loại tuple, vui lòng tham khảo Tài liệu về solidity.
Giá trị trả về
Loại
Mô tả
chuỗi
Tham số được mã hóa dưới dạng ABI.
Ví dụ
encodeParameters
Mã hóa các tham số hàm dựa trên đối tượng giao diện JSON của các tham số đó.
Tham số
Tên
Loại
Mô tả
typesArray
Mảng | đối tượng
Một mảng có các loại hoặc giao diện JSON của hàm. Xem danh sách các loại trong tài liệu về solidity.
Tham số
Mảng
Các tham số để mã hóa.
LƯU Ý Loại tuple được hỗ trợ kể từ caver-js phiên bản v1.6.0. Để biết thêm thông tin chi tiết về loại tuple, vui lòng tham khảo Tài liệu về solidity.
Giá trị trả về
Loại
Mô tả
chuỗi
Các tham số được mã hóa dưới dạng ABI.
Ví dụ
encodeFunctionCall
Mã hóa lệnh gọi hàm bằng cách sử dụng đối tượng giao diện JSON và các tham số đã cho.
Tham số
Tên
Loại
Mô tả
jsonInterface
đối tượng
Đối tượng giao diện JSON của một hàm.
Tham số
Mảng
Các tham số để mã hóa.
Giá trị trả về
Loại
Mô tả
chuỗi
Lệnh gọi hàm được mã hóa ABI là chữ ký hàm + tham số.
Ví dụ
decodeFunctionCall
Giải mã lệnh gọi hàm từ đối tượng abi của hàm hoặc chuỗi abi của hàm và trả về các tham số.
LƯU Ýcaver.abi.decodeFunctionCall được hỗ trợ kể từ caver-js phiên bản v1.6.3.
Tham số
Tên
Loại
Mô tả
abi
đối tượng
Đối tượng abi của hàm.
functionCall
chuỗi
Chuỗi lệnh gọi hàm được mã hóa.
Giá trị trả về
Loại
Mô tả
đối tượng
Một đối tượng bao gồm các tham số đơn giản. Bạn có thể sử dụng result[0] được cung cấp để có thể truy cập giống như một mảng theo thứ tự của các tham số.
Ví dụ
decodeParameter
Giải mã tham số được mã hóa dưới dạng ABI thành loại JavaScript của tham số đó.