История изменений
Исправление upcFrost, (текущая версия) :
если у тебя либа такая что там хрен моржовый вместо доки
ванильная ж либа
Хотя я не питонитс, чисто из опыта по сишной и джавовой говорю
ну блин, так и я могу ассемблеристу рассказывать как легко поднять http-сервер и перекладывать жсон в базу
Попробуй по сявой либе доку почитать и поискать по коду
я этим и занимаюсь. И меня это уже подзадолбало
Не хттп статуса, у тебя есть объект ответа, вот в нем и возвращай
ты имеешь ввиду мой собственный кастомный объект ответа? ну, с одной стороны да, с другой - есть rpc state, и у него помимо кода есть скажем details, куда вполне можно впихнуть причину почему именно все пропало. Пока самый прозрачный путь из тех что вижу, без пихания поля error везде и всюду, с рабочем ретраем и вообще с использованием внутренних механик grpc-клиента - объявить енум ошибок, пихать в state его номер в виде details и возможно еще что-то в trailing metadata, и потом парсить это на принимающей стороне. Плюсы - нет разницы между разбором ошибок в бизнес-логике и ошибок на уровне сети, в любом случае ожидаешь RpcError, в любом случае парсишь, дальше уже решаешь. Сложнее продолбать что-то
Исходная версия upcFrost, :
если у тебя либа такая что там хрен моржовый вместо доки
ванильная ж либа
Хотя я не питонитс, чисто из опыта по сишной и джавовой говорю
ну блин, так и я могу ассемблеристу рассказывать как легко поднять http-сервер и перекладывать жсон в базу
Попробуй по сявой либе доку почитать и поискать по коду
я этим и занимаюсь. И меня это уже подзадолбало
Не хттп статуса, у тебя есть объект ответа, вот в нем и возвращай
ты имеешь ввиду мой собственный кастомный объект ответа? ну, с одной стороны да, с другой - есть rpc state, и у него помимо кода есть скажем details, куда вполне можно впихнуть причину почему именно все пропало. Пока самый прозрачный путь из тех что вижу, без пихания поля error везде и всюду, с рабочем ретраем и вообще с использованием внутренних механик grpc-клиента - объявить енум, пихать в state его номер в виде details и возможно еще что-то в trailing metadata, и потом парсить это на принимающей стороне.