gpt4 book ai didi

grpc - grpc-go 中的 session 和远程 IP 地址

转载 作者:行者123 更新时间:2023-12-02 12:14:40 26 4
gpt4 key购买 nike

在grpc-go中,实现服务时,服务接口(interface)定义的方法只包含ContextRequest。从Context的来源来看,它很简单

type Context interface {
Deadline() (deadline time.Time, ok bool)

Done() <-chan struct{}

Err() error

Value(key interface{}) interface{}
}

所以我想知道是否可以获取一些元数据(包括远程IP地址和其他数据)来维持 session 。

谢谢。

最佳答案

gRPC(以任何语言)都没有提供任何作为跨请求的 session 系统特别健壮的东西。

当您需要在单个服务器上为客户端维护上下文时,流机制非常有用:流回调的堆栈可以指向您需要的任何 session 信息。

如果您需要跨单独的 RPC(或跨机器)的状态,您需要添加自己的 session 层。您可以通过创建一些唯一的 ID 来实现此目的,并在发送请求时将其附加到(例如)“my-session-id”元数据元素。

关于grpc - grpc-go 中的 session 和远程 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33684570/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com