Как позвонить на сервер gRPC через HTTP / 1.1 с помощью команды cURL или через интернет-браузер - PullRequest
0 голосов
/ 13 июня 2019

Я добавил ниже новый код в файл protobuf и скомпилировал его для получения сгенерированных файлов grpc_pb.

service EchoService {
  rpc Echo(EchoMessage) returns (EchoMessage) {
    #-----New code start-----
    option (google.api.http) = {
      post: "/v1/echo"
      body: "*"
    };
    #-----New code end------
  }
}

Из команды cURL, выполняемой ниже команды

curl -X POST -k https://localhost:10000/v1/echo -d '{"Key": "Value"}'

После выполнения вышеуказанного запроса не удалось получить правильный ответ.

Я сомневаюсь, что какие-либо изменения кода на стороне сервера необходимы, чтобы подготовить ответ для отправки обратно вызывающей стороне? Если это так, пожалуйста, предложите мне с кодом (Java), а также как сделать запрос. Если нет, то как нам нужно сделать http запрос к grpc?

Рабочий пример высоко ценится.

1 Ответ

1 голос
/ 15 июня 2019

Единственный способ вызвать удаленную процедуру - это использовать сгенерированный клиент gRPC, который выполняет все демаршалирование сообщений protobuf из gRPC-формата проводов .

См. Пример реализацииJava-клиента и сервера в официальной документации .

...