2015-07-13 202 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()在服務器端接收元數據。