Как превратить значения перечисления в строки в grpc-web

Я работал над веб-приложением с использованием React-Redux и gRPC. Сервер отправляет сообщения gRPC внешнего интерфейса, которые получает интерфейс с перечислениями в форме целых чисел. Как я могу превратить эти целочисленные значения в соответствующие им строковые значения?

Я пробовал методы в протоколе сгенерированных _pb.js файлов (.toObject(), get<Enum>() и т. Д.)

message Example {
    ExampleType type = 2;
}

enum ExampleType {
    UNKNOWN_TYPE = 0;
    TEST_TYPE = 1;
    OTHER_TYPE = 2;
}

Я ожидаю следующую форму объекта message.toObject() JSON:

{ type: string } 

Однако я получаю следующее:

{ type: integer }

person Alexander Wiederin    schedule 07.08.2019    source источник


Ответы (1)


Боюсь, вы не можете получить для этого строковое значение. web protobuf делает это не просто так. Если он разрешает перечисление строк, потребуется больше кода для указания этих имен перечислений, что не подходит для размера кода.

person Bo Yang    schedule 07.08.2019