• Este debate tiene 0 respuestas, 1 mensaje y ha sido actualizado por última vez el hace 4 años, 1 mes por  BETEA.
Viendo 1 entrada (de un total de 1)

Envio Json a webService externo



  • BETEA
    Participante
    BETEA

    Buenos dias,

    Estoy creando una extension para una instalacion en cloud que envio un jSon un webService. El codigo es asi:

    procedure SendContacts(var pContactTxt: text)
    var
    lMensaje: Text;
    begin
    Content.Clear();
    Content.GetHeaders(Headers);
    lMensaje := pContactTxt;
    Content.WriteFrom(lMensaje);
    Headers.Remove(‘Content-Type’);
    Headers.Remove(‘Charset’);
    Headers.Add(‘Content-Type’, ‘application/json’);
    Headers.Add(‘Charset’, ‘utf-8’);
    httpRequest.Content(Content);
    httpRequest.Method(‘POST’);

    url := ‘http://xxxxxx.com/webservice/create-contact’;
    client.Clear();
    Client.SetBaseAddress(url);

    if not Client.Send(httpRequest, ResponseMessage) then
    error(‘Llamada incorrecta’);
    if not ResponseMessage.IsSuccessStatusCode then
    Error(‘El WS ha devuelto el siguiente error:\’ +
    ‘Status Code : %1\’ +
    ‘Descripcion: %2’,
    ResponseMessage.HttpStatusCode,
    ResponseMessage.ReasonPhrase);

    ResponseMessage.Content.ReadAs(ResponseText);
    Message(‘Contacto(s) enviados a Gremious’);
    end;

    Si uso el requestBin para hacer pruebas, el mensaje llega correcto:

    Si copia el contenido, y lo envio al servicio a traves del Postman, tambien va correcto, y se peude ver lo siguiente en el log del servicio:

    Pero al madarlo directamente al servicio desde BC, me sale este error:

    Y se peude ver esto en el log del servicio:

    Parece que el jSOn lo manda en una especie the array, y el servicio no es capaz de procesarlo. Quizas me falta configurar alguan propiedad en la llamada??

    Muchas gracias

    #13932
Viendo 1 entrada (de un total de 1)

Debe iniciar sesión para responder a este tema.