Правильный способ отправки параметра JSON с помощью RestSharp через POST - PullRequest
0 голосов
/ 10 апреля 2019

Я хочу использовать отдыхающий веб-сервис из C #, используя RestSharp.

Веб-сервис закодирован в Java, вот определение:

@POST
    @Path("/esTerceraEdad")
    @Produces(MediaType.APPLICATION_JSON + ";charset=utf-8")
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    public String esTerceraEdad(@FormParam("cedula") String cedula) {

А это клиент C #:

var client = new RestClient("some-url");
        var request = new RestRequest("some-resource", Method.POST);
        request.AddHeader("accept", "application/x-www-form-urlencoded");
        request.AddParameter("cedula", "some-data", ParameterType.RequestBody);
        IRestResponse response = client.Execute(request);
        var res = response.Content;

Результат: Bad request

Если я отправлю параметр, используя вместо этого:

        request.AddJsonBody(new { cedula = cf.Cedula });

Результат UnsupportedMediaType

Я также безуспешно пытался отправить параметр следующим образом:

        request.AddParameter("cedula", "{\"cedula\": \"" + cf.Cedula + "\"}", ParameterType.RequestBody);

Ожидаемое необработанное значение в reponse.Content составляет [{"1"}]

Как мне правильно отправить параметр cedula?
Любая подсказка очень ценится.
Спасибо

...