VersionTally gRPC Method
参数
版本
整数
必填
正在加载...
退货
voting_power
整数
正在加载...
threshold_power
整数
正在加载...
total_voting_power
整数
正在加载...
请求
1包 main23导入 (4"上下文"5"crypto/tls"6"encoding/json"7"fmt"8"日志"9"time"1011"google.golang.org/grpc"12"google.golang.org/grpc/credentials"1314signaltypes "celestia-grpc/celestia/signal/v1"15)1617// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token18// For eg: QN Endpoint: https://docs-demo.celestia-mainnet.quiknode.pro/abcde12345678919// endpoint will be: docs-demo.celestia-mainnet.quiknode.pro:9090 {9090 is the port number for Celestia gRPC}20// token will be : abcde1234567892122var token = "YOUR_TOKEN"23var endpoint = "YOUR_ENDPOINT:9090"2425类型 auth 结构体 {26token 字符串27}2829func (a *auth) GetRequestMetadata(ctx 上下文.上下文, uri ...字符串) (map[字符串]字符串, error) {30返回 map[字符串]字符串{31“x-token”: a.令牌,32}, nil33}3435func (a *auth) RequireTransportSecurity() bool {36返回 false37}3839func main() {40opts := []grpc.DialOption{41grpc.WithTransportCredentials(凭证.NewTLS(&tls.配置{})),42grpc.WithPerRPC凭据(&auth{令牌}),43}4445// Create gRPC connection46conn, err := grpc.Dial(endpoint, opts...)47如果 err != nil {48log.Fatalf("Failed to connect to Celestia gRPC server: %v", err)49}50defer conn.Close()5152client := signaltypes.NewQueryClient(conn)5354ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)55defer cancel()5657resp, err := client.VersionTally(ctx, &signaltypes.QueryVersionTallyRequest{58Version: 2, // Query for version 259})60如果 err != nil {61log.Fatalf("Failed to query version tally: %v", err)62}6364jsonData, err := json.MarshalIndent(resp, "", " ")65如果 err != nil {66log.Printf("Error converting to JSON: %v", err)67} else {68fmt.Println("\nOutput:")69fmt.Println(string(jsonData))70}71}
1包 main23导入 (4"上下文"5"crypto/tls"6"encoding/json"7"fmt"8"日志"9"time"1011"google.golang.org/grpc"12"google.golang.org/grpc/credentials"1314signaltypes "celestia-grpc/celestia/signal/v1"15)1617// Quicknode endpoints consist of two crucial components: the endpoint name and the corresponding token18// For eg: QN Endpoint: https://docs-demo.celestia-mainnet.quiknode.pro/abcde12345678919// endpoint will be: docs-demo.celestia-mainnet.quiknode.pro:9090 {9090 is the port number for Celestia gRPC}20// token will be : abcde1234567892122var token = "YOUR_TOKEN"23var endpoint = "YOUR_ENDPOINT:9090"2425类型 auth 结构体 {26token 字符串27}2829func (a *auth) GetRequestMetadata(ctx 上下文.上下文, uri ...字符串) (map[字符串]字符串, error) {30返回 map[字符串]字符串{31“x-token”: a.令牌,32}, nil33}3435func (a *auth) RequireTransportSecurity() bool {36返回 false37}3839func main() {40opts := []grpc.DialOption{41grpc.WithTransportCredentials(凭证.NewTLS(&tls.配置{})),42grpc.WithPerRPC凭据(&auth{令牌}),43}4445// Create gRPC connection46conn, err := grpc.Dial(endpoint, opts...)47如果 err != nil {48log.Fatalf("Failed to connect to Celestia gRPC server: %v", err)49}50defer conn.Close()5152client := signaltypes.NewQueryClient(conn)5354ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)55defer cancel()5657resp, err := client.VersionTally(ctx, &signaltypes.QueryVersionTallyRequest{58Version: 2, // Query for version 259})60如果 err != nil {61log.Fatalf("Failed to query version tally: %v", err)62}6364jsonData, err := json.MarshalIndent(resp, "", " ")65如果 err != nil {66log.Printf("Error converting to JSON: %v", err)67} else {68fmt.Println("\nOutput:")69fmt.Println(string(jsonData))70}71}