Come ottenere i dati di archiviazione del contratto intelligente?
3 risposta
- voti
-
- 2019-05-06
Hotrovato la soluzione!
Perme:
function httpGet() { let xmlHttp = new XMLHttpRequest(); xmlHttp.open( "GET", 'https://alphanet-node.tzscan.io/chains/main/blocks/head/context/contracts/<CONTRACT_ADDRESS>/storage', false ); // false for synchronous request xmlHttp.send( null ); return JSON.parse(xmlHttp.responseText) }
Restituisce un oggetto JSON coni dati di archiviazione.
I found the solution!
For me it:
function httpGet() { let xmlHttp = new XMLHttpRequest(); xmlHttp.open( "GET", 'https://alphanet-node.tzscan.io/chains/main/blocks/head/context/contracts/<CONTRACT_ADDRESS>/storage', false ); // false for synchronous request xmlHttp.send( null ); return JSON.parse(xmlHttp.responseText) }
It returns JSON object with storage data.
-
- 2020-03-15
Tzscan èentrato afarparte della rete Dunee le APIpossono cambiare drasticamente,il che danneggerà latua app. Perchénon usare Taquito?È sempliceedelegantee ilpacchettoin bundle con latua appnon si romperà se c'è un aggiornamento.
import { Tezos } from "@taquito/taquito"; [...] Tezos.setProvider({...}); const contract = await Tezos.contract.at(contractAddress) const storage = await contract.storage();
E questo ètutto,oltre ad avere unfacile accesso allo spazio di archiviazione,puoi anche cercare chiavi/valorinelletuemappe/BigMap :)
Tzscan has joined the Dune network and APIs can change quite dramatically, which will break your app. Why not using Taquito? It is simple and elegant and the package being bundled with your app, it won't break if there is an update.
import { Tezos } from "@taquito/taquito"; [...] Tezos.setProvider({...}); const contract = await Tezos.contract.at(contractAddress) const storage = await contract.storage();
And that's it, in addition of having an easy access to the storage, you can also search your Maps/BigMaps for keys/values :)
-
- 2020-03-30
Puoi usare lafunzioneeztz dato che hafunzionatoperme,
storage = await eztz.contract.storage(contractAddress);
L'output saràin formato JSON,puoi stringere l'output come,
JSON.stringify(storage);
Spero che questoti possa aiutare.Buonafortuna ...
You can use eztz function as that worked for me,
storage = await eztz.contract.storage(contractAddress);
The output will be in JSON format, you can stringify the output as,
JSON.stringify(storage);
Hope that will help you. Good luck...
Cerco di ottenere dati di archiviazioneper contrattiintelligenti:
Ma ho ricevuto unerrore:
TypeError: contract.storage is not a function
Inoltre hoprovato atrovareilmetodo APIper questo sutzscan.
Qualcheideaper riceverei dati di archiviazione?
Graziein anticipoperiltuo aiuto