2015-07-13 205 views
2

我想要在Go APP和Java应用程序都可以调用的服务器应用程序上进行操作。grpc头文件/ Cookie中的Go

出于某种原因,有一个cookie身份验证和oAuth机制,所以我想将一个Go应用程序设置为Auth Micro-service用于身份验证目的。因为GRPC是建立在HTTP2上的,所以头文件和cookie都在协议上。但是我没有找到如何在GitHub上发现rpc发生,由go实现时如何进行头和cookie。 JAVA的实现标头在:

https://github.com/grpc/grpc-java/tree/master/examples/src/main/java/io/grpc/examples/header 

任何人都可以给我一些方向的Go实现为此目的?

回答

4

gRPC中的标题被称为“元数据”。客户只能发送“标题”。服务器可以发送“标题”和“预告片”。

您想使用google.golang.org/grpc/metadata包和metadata.NewContext()在客户端发送元数据。使用grpc.SendHeader()grpc.SetTrailer()在服务器端发送元数据。使用grpc.Header()grpc.Trailer()CallOptions在客户端接收Metadata。使用metadata.FromContext()在服务器端接收元数据。