Bộ lọc

getFilterChanges

caver.klay.getFilterChanges(bộ lọcId [, callback])

Phương thức truy vấn lần lượt đối với bộ lọc, trả về một mảng các bản ghi kể từ lần truy vấn trước đó.

Tham số

Giá trị trả về

Promise trả về Array - Mảng các đối tượng bản ghi hoặc mảng trống nếu không có thay đổi kể từ lần truy vấn trước đó.

Cấu trúc của Object bản ghi trả về trong Array có dạng như sau:

Ví dụ

> caver.klay.getFilterChanges('0xafb8e49bbcba9d61a3c616a3a312533e').then(console.log);
[ 
    { 
        address: '0x71e503935b7816757AA0314d4E7354dab9D39162',
        topics: [ '0xe8451a9161f9159bc887328b634789768bd596360ef07c5a5cbfb927c44051f9' ],
        data: '0x0000000000000000000000000000000000000000000000000000000000000001',
        blockNumber: 3525,
        transactionHash: '0x1b28e2c723e45a0d8978890598903f36a74397c9cea8531dc9762c39483e417f',
        transactionIndex: 0,
        blockHash: '0xb7f0bdaba93d3baaa01a5c24517da443207f774e0202f02c298e8e997a540b3d',
        logIndex: 0,
        id: 'log_c1ea867d'
    } 
]

getFilterLogs

caver.klay.getFilterLogs(bộ lọcId [, callback])

Trả về một mảng gồm tất cả các bản ghi khớp với bộ lọc bằng id cho trước. Nên lấy đối tượng bộ lọc bằng cách sử dụng hàm [newFilter](#newbộ lọc). Lưu ý rằng không thể sử dụng các id bộ lọc trả về bằng các hàm tạo bộ lọc khác, chẳng hạn như [newBlockFilter](#newblockbộ lọc) hoặc [newPendingTransactionFilter](#newpendingtransactionbộ lọc), với hàm này.

Tham số

Giá trị trả về

Tham khảo [getFilterChanges](#getbộ lọcchanges)

Ví dụ

> caver.klay.getFilterLogs('0xcac08a7fc32fc625a519644187e9f690').then(console.log);
[
    {
        address: '0x55384B52a9E5091B6012717197887dd3B5779Df3',
        topics: [ '0xe8451a9161f9159bc887328b634789768bd596360ef07c5a5cbfb927c44051f9' ],
        data: '0x0000000000000000000000000000000000000000000000000000000000000001',
        blockNumber: 7217,
        transactionHash: '0xa7436c54e47dafbce696de65f6e890c96ac22c236f50ca1be28b9b568034c3b3',
        transactionIndex: 0,
        blockHash: '0xe4f27c524dacfaaccb36735deccee69b3d6c315e969779784c36bb8e14b89e01',
        logIndex: 0,
        id: 'log_2dd695a8' 
    }
]

getPastLogs

caver.klay.getPastLogs(options [, callback])

Lấy bản ghi trong quá khứ, phù hợp với các tùy chọn đã cho.

Tham số

Giá trị trả về

Promise trả về Array - Mảng các đối tượng bản ghi.

Cấu trúc của Object sự kiện trả về trong Array có dạng như sau:

Ví dụ

> caver.klay.getPastLogs({
    address: "0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe",
    topics: ["0x033456732123ffff2342342dd12342434324234234fd234fd23fd4f23d4234"]
})
.then(console.log);

[{
    data: '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385',
    topics: ['0xfd43ade1c09fade1c0d57a7af66ab4ead7c2c2eb7b11a91ffdd57a7af66ab4ead7', '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385']
    logIndex: 0,
    transactionIndex: 0,
    transactionHash: '0x7f9fade1c0d57a7af66ab4ead79fade1c0d57a7af66ab4ead7c2c2eb7b11a91385',
    blockHash: '0xfd43ade1c09fade1c0d57a7af66ab4ead7c2c2eb7b11a91ffdd57a7af66ab4ead7',
    blockNumber: 1234,
    address: '0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe',
    id: 'log_124d61bc',
},{...}]

newBlockFilter

caver.klay.newBlockFilter([callback])

Tạo bộ lọc trong nút để nhận thông tin về sự xuất hiện của khối mới. Để kiểm tra xem trạng thái có thay đổi hay không, hãy gọi ra [getFilterChanges](#getbộ lọcchanges).

Tham số

Giá trị trả về

Promise trả về String - Id bộ lọc.

Ví dụ

> caver.klay.newBlockFilter().then(console.log);
0x9ca049dc8b0788ee05724e45fc4137f1

newFilter

caver.klay.newFilter(options [, callback])

Tạo đối tượng bộ lọc sử dụng các tùy chọn bộ lọc nhất định để nhận thông tin thay đổi trạng thái cụ thể (bản ghi).

  • Để kiểm tra xem trạng thái có thay đổi hay không, hãy gọi ra [getFilterChanges](#getbộ lọcchanges).

  • Để có được tất cả các bản ghi khớp với bộ lọc được tạo bởi newFilter, hãy gọi ra [getFilterLogs](#getbộ lọcnhật ký).

Để biết thông tin chi tiết về các bộ lọc theo chủ đề, hãy tham khảo [API Nền tảng Klaytn - klay_newFilter](../../../../../json-rpc/api-references/klay/bộ lọc.md#klay_newbộ lọc).

Tham số

Giá trị trả về

Promise trả về String - Id bộ lọc.

Ví dụ

> caver.klay.newFilter({}).then(console.log);
0x40d40cb9758c6f0d99d9c2ce9c0f823

> caver.klay.newFilter({address: "0x55384B52a9E5091B6012717197887dd3B5779Df3"}).then(console.log);
0xd165cbf31b9d60346aada33dbefe01b

newPendingTransactionFilter

caver.klay.newPendingTransactionFilter([callback])

Tạo bộ lọc trong nút để nhận thông tin về sự xuất hiện của khối đang chờ xử lý mới. Để kiểm tra xem trạng thái có thay đổi hay không, hãy gọi ra [getFilterChanges](#getbộ lọcchanges).

Tham số

Giá trị trả về

Promise trả về String - Id bộ lọc.

Ví dụ

> caver.klay.newPendingTransactionFilter().then(console.log);
0x1426438ffdae5abf43edf4159c5b013b

uninstallFilter

caver.klay.uninstallFilter(bộ lọcId [, callback])

Gỡ bỏ bộ lọc với id cho trước. Bạn nên xóa ngay bộ lọc nếu việc giám sát không còn cần thiết nữa. Bộ lọc sẽ bị xóa nếu không được gọi ra thông qua [getFilterChanges](#getbộ lọcchanges) trong thời gian lớn hơn giá trị thời gian chờ được thiết lập trong nút. Cấu hình mặc định là 5 phút.

Tham số

Giá trị trả về

Promise trả về Boolean - Giá trị là true nếu bộ lọc đã được gỡ cài đặt thành công, ngược lại, giá trị sẽ là false.

Ví dụ

> caver.klay.uninstallFilter('0x1426438ffdae5abf43edf4159c5b013b').then(console.log);
true

Last updated