【1】 proto相關文件同服務端,如已經生成,可以直接使用服務端的文件(包)
【2】新建一個目錄“WHG_CLIENT”,目錄下新建一個main.go文件
package mainimport ("context""log""grpc-go-master/examples/whgservice/whgserviceproto""time""google.golang.org/grpc""google.golang.org/grpc/credentials/insecure"
)func main() {//連接服務conn, err := grpc.Dial("127.0.0.1:8888", grpc.WithTransportCredentials(insecure.NewCredentials()))if err != nil {panic(err)}// 延遲關閉連接defer conn.Close()client := whgserviceproto.NewWHGClient(conn)// 初始化上下文,設置請求超時時間為1秒ctx, cancel := context.WithTimeout(context.Background(), time.Second)defer cancel()// 延遲關閉請求會話resp, err := client.SayStatus(ctx, &whgserviceproto.WHGRequest{Name: "PMAC"})if err != nil {log.Fatalf("could not send msg: %v", err)}// 打印服務的返回的消息log.Printf("msg: %s", resp.GetStatus())
}
【3】目錄結構如下: