【发布时间】:2021-04-22 11:09:17
【问题描述】:
我添加了被 Grpc.Core.Interceptors.Interceptor 继承的 MyInterceptor:
public class MyInterceptor : Interceptor
{
public override Task<TResponse> UnaryServerHandler<TRequest, TResponse>(TRequest request, ServerCallContext context, UnaryServerMethod<TRequest, TResponse> continuation)
{
//do something
return base.UnaryServerHandler(request, context, continuation);
}
}
我正在通过以下方式启用此拦截器:
_server = new Server(channelOptions)
{
Services = { Service.ServerServiceDefinition() },
Ports = { new ServerPort(...) },
};
var interceptor = new MyInterceptor();
foreach(var service in _server.Services)
{
service.Intercept(interceptor);
}
而且每次我调用 grpc 方法,拦截器都没有被调用。
非常感谢。
【问题讨论】: