Protocol buffers 服务器错误:rpc错误:代码=不可用描述=传输正在关闭;在gRPC中
我有一个grpc服务器和一个客户端(在我的博客项目中)。当我运行服务器时,似乎一切正常,当我运行客户端时,我会遇到这个错误,服务器和客户端都会关闭Protocol buffers 服务器错误:rpc错误:代码=不可用描述=传输正在关闭;在gRPC中,protocol-buffers,grpc,grpc-go,Protocol Buffers,Grpc,Grpc Go,我有一个grpc服务器和一个客户端(在我的博客项目中)。当我运行服务器时,似乎一切正常,当我运行客户端时,我会遇到这个错误,服务器和客户端都会关闭 rpc error: code = Unavailable desc = transport is closing 我认为错误与这段代码有关: func newPost(c proto_blog.BlogServiceClient) { fmt.Println("Starting to do a Unary RPC")
rpc error: code = Unavailable desc = transport is closing
我认为错误与这段代码有关:
func newPost(c proto_blog.BlogServiceClient) {
fmt.Println("Starting to do a Unary RPC")
req := &proto_blog.ReqNewPost{
Title: "How can we make an gRPC server?",
Content: "First You have to.....\nAt the end, you have to....",
Author: "Arsham Ahora",
Date: fmt.Sprint(time.Now()),
}
res, err := c.NewPost(context.Background(), req)
if err != nil {
log.Fatalf("Error calling greet server: %v", err)
}
log.Printf("Response from Greet: %v", res.Id)
}
**我注意到这个错误与一元还是流无关。在返回响应之前,我发现在服务器代码中有这样一个代码:
log.Fatalf("Error happend: %v", e)
我改变了我的代码如下:
if e != nil {
log.Fatalf("Error happend: %v", e)
}
该错误尚未发生,但log.Fatalf()已损坏我的应用程序
要了解更多详细信息,这不是grpc部分直接出现的错误,这是因为我的应用程序在向grpc客户端返回任何响应之前坏了。我认为您发送了错误的代码,因为错误是:“传输正在关闭”您的连接已关闭,您必须在服务器中找到退出服务器的位置,并进行处理