Я пытаюсь принять POST-запрос от внешней службы, но данные x-www-form-encoded
.Наша система gRPC, но мы используем grpc-gateway для передачи запросов на отдых json.
Если я добавлю подписку в мой .proto
файл
rpc Action(ActionRequest) returns (ActionResponse) {
option (google.api.http) = {
post: "/v1/action"
body: "*"
};
}
Любые сообщения, которые я попытаюсь создать, потерпят неудачу с
`invalid character 'p' looking for beginning of value - Error: rpc error: code = InvalidArgument desc = invalid character 'p' looking for beginning of value`
Это имеет смысл как 'p'- первый символ данных x-www-form-encoded
(полезная нагрузка - это имя объекта).
До сих пор казалось, что у меня нет доступа к необработанному телу запроса, и кажется, что это возможно припользовательский маршаллер, который чувствует себя как излишним, и, вероятно, выходит за рамки.
Однако я не могу на всю жизнь увидеть, как получить доступ к этим данным.Я попытался добавить еще один прото от googleapis .Тем не менее, я нашел документацию по этому аспекту gRPC трудной для выполнения, и, возможно, я делаю это неправильно.