ExecuteScriptAtBlockID Access API Method
Parâmetros
Script
cadeia de caracteres
OBRIGATÓRIO
Carregando...
Arguments
cadeia de caracteres
OBRIGATÓRIO
Carregando...
BlockId
cadeia de caracteres
OBRIGATÓRIO
Carregando...
Devoluções
valor
cadeia de caracteres
Carregando...
Pedido
1pacote principal23importar (4"contexto"5"fmt"6"registo"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()18se err != nil {19log.Fatalf("err: %v", err)20}21// Get Latest (sealed) block22latestResp, err := client.GetLatestBlock(ctx, &access.GetLatestBlockRequest{IsSealed: true})23se 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})44se err != nil {45log.Fatal("execute script at block ID failed: ", err)46}47fmt.Printf("executed script , returned %s \n", string(valueHeightResp.Value))4849}
1pacote principal23importar (4"contexto"5"fmt"6"registo"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()18se err != nil {19log.Fatalf("err: %v", err)20}21// Get Latest (sealed) block22latestResp, err := client.GetLatestBlock(ctx, &access.GetLatestBlockRequest{IsSealed: true})23se 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})44se err != nil {45log.Fatal("execute script at block ID failed: ", err)46}47fmt.Printf("executed script , returned %s \n", string(valueHeightResp.Value))4849}
Ainda não tem uma conta?
Crieendpoint seuendpoint Quicknode endpoint segundos e comece a desenvolver
Comece gratuitamente