ExecuteScriptAtBlockID Access API Method
Paramètres
Script
chaîne de caractères
OBLIGATOIRE
Chargement en cours...
Arguments
chaîne de caractères
OBLIGATOIRE
Chargement en cours...
BlockId
chaîne de caractères
OBLIGATOIRE
Chargement en cours...
Retours
valeur
chaîne de caractères
Chargement en cours...
Demande
1paquet principal23import (4« contexte »5« fmt »6« journal »7"strconv"89"github.com/onflow/flow/protobuf/go/flow/access"10)111213func main() {1415// Requires authenticating before making the request. Refer to Intro Page on how Authentication can be done.16client, err := getAccessClientWithBasicAuth("ENDPOINT-NAME", "TOKEN_GOES_HERE")17ctx := context.Background()18si err != nil {19log.Fatalf("err: %v", err)20}21// Get Latest (sealed) block22latestResp, err := client.GetLatestBlock(ctx, &access.GetLatestBlockRequest{IsSealed: true})23si err != nil {24log.Fatal("Get latest block failed: ", err)25}26fmt.Println("Latest block height: ", latestResp.Block.Height)2728// execute script at latest block ID29script := []byte(`30pub fun main(a: Int): Int {31return a + 1032}33`)3435// Convert integer to JSON-CDC (Cadence JSON)36arg := 1037// JSON-CDC representation of an integer is a JSON object with "type" and "value" fields38jsonCDC := fmt.Sprintf(`{"type":"Int","value":"%s"}`, strconv.Itoa(arg))3940// Create script arguments41args := [][]byte{[]byte(jsonCDC)}4243valueHeightResp, err := client.ExecuteScriptAtBlockID(ctx, &access.ExecuteScriptAtBlockIDRequest{Script: script, Arguments: args, BlockId: latestResp.Block.Id})44si err != nil {45log.Fatal("execute script at block ID failed: ", err)46}47fmt.Printf("executed script , returned %s \n", string(valueHeightResp.Value))4849}
1paquet principal23import (4« contexte »5« fmt »6« journal »7"strconv"89"github.com/onflow/flow/protobuf/go/flow/access"10)111213func main() {1415// Requires authenticating before making the request. Refer to Intro Page on how Authentication can be done.16client, err := getAccessClientWithBasicAuth("ENDPOINT-NAME", "TOKEN_GOES_HERE")17ctx := context.Background()18si err != nil {19log.Fatalf("err: %v", err)20}21// Get Latest (sealed) block22latestResp, err := client.GetLatestBlock(ctx, &access.GetLatestBlockRequest{IsSealed: true})23si err != nil {24log.Fatal("Get latest block failed: ", err)25}26fmt.Println("Latest block height: ", latestResp.Block.Height)2728// execute script at latest block ID29script := []byte(`30pub fun main(a: Int): Int {31return a + 1032}33`)3435// Convert integer to JSON-CDC (Cadence JSON)36arg := 1037// JSON-CDC representation of an integer is a JSON object with "type" and "value" fields38jsonCDC := fmt.Sprintf(`{"type":"Int","value":"%s"}`, strconv.Itoa(arg))3940// Create script arguments41args := [][]byte{[]byte(jsonCDC)}4243valueHeightResp, err := client.ExecuteScriptAtBlockID(ctx, &access.ExecuteScriptAtBlockIDRequest{Script: script, Arguments: args, BlockId: latestResp.Block.Id})44si err != nil {45log.Fatal("execute script at block ID failed: ", err)46}47fmt.Printf("executed script , returned %s \n", string(valueHeightResp.Value))4849}
Vous n'avez pas encore de compte ?
Créez votreendpoint Quicknode endpoint quelques secondes et commencez à développer
Commencez gratuitement