Пустые метаданные в RpcException с C # gRPC-сервера - PullRequest
0 голосов
/ 30 октября 2019

Я не могу получить метаданные из исключения с gRPC-сервера ASP.NET.

Я пытаюсь следовать этому уроку https://github.com/aspnet/AspNetCore.Docs/tree/master/aspnetcore/tutorials/grpc и добавить исключения отлова в GrpcGreeterClient.

сервер:

var metadata = new Metadata
            {
                { "user", "sd" }
            };
            throw new RpcException(new Status(StatusCode.PermissionDenied, "Permission denied"), metadata);

клиент:

catch (RpcException ex) when (ex.StatusCode == StatusCode.PermissionDenied)
            {
                Console.WriteLine(ex.Trailers.Count);
                var userEntry = ex.Trailers.FirstOrDefault(e => e.Key == "user");
                Console.WriteLine($"User '{userEntry.Value}' does not have permission to view this portfolio.");
            }

Я ожидаю, что ex.Trailers.Count будет 1 и «пользователь» в качестве ключа.

1 Ответ

0 голосов
/ 01 ноября 2019

Проблема в Grpc.Net.Client 2.23.0, с 2.24.0 все ок.

...