Ver Mensaje Individual
  #1  
Antiguo 14-09-2016
bucanero bucanero is offline
Miembro
 
Registrado: nov 2013
Ubicación: Almería, España
Posts: 208
Reputación: 11
bucanero Va camino a la fama
Obtener los errores que devuelve un webservice

Hola buenas tardes,

Ando otra vez liado con el tema de los WebService, y en particular con el componente THTTPRIO.
Se trata de que al hacer una determinada llamada al servidor externo, si la llamada o parámetros de la misma no están bien montados, el servidor devuelve un código de error, y junto al código de error también devuelve un XML con la información detallada de dicho error.

Esta información del error con los componente TIDHTTP los puedo capturar con el siguiente código sin mayor problemas, en particular la linea en negrita es la que contiene el XML con la información del error:

Código Delphi [-]
  with IdHTTP1 do
  try
    //XML con los parametros de la consulta
    Result := Post(AURL, Stream);
  except
    on E: EIdHTTPProtocolException do begin
      MemoResult.lines.add('ErrorCode: ' + IntToStr(E.errorCode));
      MemoResult.lines.add(E.message);
      //En errorMessage devuelve un XML con informacion del error
      MemoResult.lines.add(E.ErrorMessage);
    end;
    on E: Exception do begin
      MemoResult.lines.add(E.message);
    end;
  end;

pero al hacer la misma llamada al componente THTTPRIO solo obtengo el código del error que devuelve el servidor, con el mensaje del error, pero ya no consigo obtener la información del XML que devuelve en la misma petición. ¿Se puede obtener dicha información de alguna forma?

Gracias de antemano por vuestra ayuda
Un Saludo
Responder Con Cita