package main import ( "context" "dy-test/dyrpc/helper" "dy-test/dyrpc/services/prod" "fmt" "google.golang.org/grpc" "google.golang.org/protobuf/types/known/timestamppb" "log" "time" ) const ( certFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/client/client.pem" keyFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/client/client.key" caFile = "/Users/duyong/workspace/gotest/dyrpc/ssl/ca/ca.pem" ) func main() { //creds, err := credentials.NewClientTLSFromFile("/Users/duyong/workspace/gotest/dyrpc/ssl/server/server.pem", "localhost") //if err != nil { // grpclog.Fatalf("Failed to create TLS credentials %v", err) //} conn, err := grpc.NewClient(":8081", grpc.WithTransportCredentials(helper.GetCredentials(certFile, keyFile, caFile))) if err != nil { log.Fatalf("failed to dial: %v", err) } defer conn.Close() client := prod.NewProdServiceClient(conn) res, err := client.GetProdStock(context.Background(), &prod.ProdRequest{ProdId: 100, ProdArea: prod.ProdArea_C}) if err != nil { log.Fatal(err) } fmt.Println(res.ProdStock) prodList, err := client.GetProdStocks(context.Background(), &prod.QueryProdStocks{ PageNo: 1, PageSize: 10, }) if err != nil { log.Fatal(err) } fmt.Println(prodList.ProdRes) prodInfo, err := client.GetProdInfo(context.Background(), &prod.ProdRequest{ProdId: 100, ProdArea: prod.ProdArea_C}) if err != nil { log.Fatal(err) } fmt.Println(prodInfo) orderClient := prod.NewOrderServiceClient(conn) newOrderRes, err := orderClient.NewOrder(context.Background(), &prod.OrderRequest{ ProdMain: &prod.ProdMain{ OrderId: 1, OrderNo: "123", UserId: 456, OrderMoney: 50.5, OrderTime: ×tamppb.Timestamp{ Seconds: time.Now().Unix(), }, }, }) if err != nil { log.Fatal(err) } fmt.Println(newOrderRes) }