mirror of
https://github.com/XRPLF/xrpl-dev-portal.git
synced 2025-11-21 04:05:49 +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