mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-11-20 19:55:54 +00:00
Add code samples for markers and pagination.
This commit is contained in:
5
content/_code-samples/markers-and-pagination/README.md
Normal file
5
content/_code-samples/markers-and-pagination/README.md
Normal file
@@ -0,0 +1,5 @@
|
||||
# Markers and Pagination
|
||||
|
||||
Iterate over a `ledger_data` method request that requires multiple calls.
|
||||
|
||||
Examples from the [Markers and Pagination page](https://xrpl.org/markers-and-pagination.html#markers-and-pagination).
|
||||
@@ -0,0 +1,40 @@
|
||||
const xrpl = require("xrpl")
|
||||
|
||||
async function main() {
|
||||
|
||||
// Create client and connect to network.
|
||||
const client = new xrpl.Client("wss://xrplcluster.com/")
|
||||
await client.connect()
|
||||
|
||||
// Query ledger data.
|
||||
let ledger = await client.request({
|
||||
"command": "ledger_data",
|
||||
"ledger_index": 500000,
|
||||
})
|
||||
|
||||
// Create function to loop through API calls.
|
||||
function code(){
|
||||
console.log(ledger["result"])
|
||||
}
|
||||
|
||||
// Run code at least once before checking for markers.
|
||||
do {
|
||||
code()
|
||||
|
||||
if (ledger["result"]["marker"] == null) {
|
||||
break
|
||||
}
|
||||
|
||||
const ledger_marker = await client.request({
|
||||
"command": "ledger_data",
|
||||
"ledger_index": 500000,
|
||||
"marker": ledger["result"]["marker"]
|
||||
})
|
||||
ledger = ledger_marker
|
||||
|
||||
} while (true)
|
||||
|
||||
client.disconnect()
|
||||
}
|
||||
|
||||
main()
|
||||
@@ -0,0 +1,23 @@
|
||||
from xrpl.clients import JsonRpcClient
|
||||
from xrpl.models.requests import LedgerData
|
||||
|
||||
# Create a client to connect to the main network.
|
||||
client = JsonRpcClient("https://xrplcluster.com/")
|
||||
|
||||
# Specify ledger to query and request data.
|
||||
ledger = LedgerData(ledger_index=500000)
|
||||
ledger_data = client.request(ledger).result
|
||||
|
||||
# Code to run on each call.
|
||||
def code():
|
||||
print(ledger_data)
|
||||
|
||||
#Execute code at least once before checking for markers.
|
||||
while True:
|
||||
code()
|
||||
if "marker" not in ledger_data:
|
||||
break
|
||||
|
||||
# Specify ledger and marker to continue querying.
|
||||
ledger_marker = LedgerData(ledger_index=500000, marker=ledger_data["marker"])
|
||||
ledger_data = client.request(ledger_marker).result
|
||||
Reference in New Issue
Block a user