Beitrag
Teile dein Wissen.
How to query Swap_Event without specifying phantom types?
I'm trying to query all Swap_Event instances without specifying phantom types for the struct like Swap_Event<phantom Ty0, phantom Ty1>
. What are some alternative methods to achieve this? Also, if I upgrade the contract, how does it affect my queries? Additionally, is there a rate limit on public GraphQL queries?
- Move CLI
- Move
Antworten
3MoveEventModule
Sie können die QueryEvents-API mit einem Filter verwenden, der auf Folgendes abzielt:
"params": [
{
"MoveEventModule": {
"package": "<PACKAGE_ID>",
"module": "<MODULE_NAME>",
"event": "Swap_Event"
}
}
]
Beachten Sie jedoch, dass dies für alle Ereignisse im Modul gilt und nicht nurSwap_Event
. Zum Filtern bestimmter Ereignisnamen, wenn keine Phantomtypen angegeben sind, können Sie eine GraphQL-Abfrage verwenden, z. B.:
https://sui-<devnet|testnet|mainnet>.mystenlabs.com/
{
events(
filter: {
eventType: "<PACKAGE_ID>::<MODULE_NAME>::Swap_Event"
}
) {
edges {
node {
timestamp
type {
repr
}
data
json
}
}
}
}
Diese Methode ermöglicht eine detailliertere Steuerung.
In Bezug auf Vertrags-Upgrades funktionieren Ihre Anfragen mit jeder Paketversion. Obwohl es empfohlen wird, das neue Paket für neue Abfragen zu verwenden, kann das alte Paket weiterhin für die Suche nach historischen Daten verwendet werden.
Das Ratenlimit für öffentliche GraphQL-Anfragen wird für jede Quelle gedrosselt, die in einem 10-Sekunden-Fenster mehr als 2000 Anfragen stellt.
Weißt du die Antwort?
Bitte melde dich an und teile sie.
Move is an executable bytecode language used to implement custom transactions and smart contracts.