Ver Mensaje Individual
  #6  
Antiguo 30-08-2011
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Reputación: 19
Chris Va por buen camino
Sinceramente nunca he programado este tipo de modulos, mucho menos con Lazarus. Pero estuve revisando documentación, he encontrado esto que talvez te puede ayudar:
http://wiki.lazarus.freepascal.org/f...ing_GET_fields

http://wiki.lazarus.freepascal.org/F...Apache_Modules

Con la información encontrada en el enlace que te proporcioné, considero que un código similar a este te podría ayudar a depurar tu servidor:
Código Delphi [-]
try
    ... Acá todo el código que procesa la petición ...
except on E: Exception do
    AResponse.Content := Format('ERROR: Tipo: "%s" Mensaje: %s', [E.ClassName, E.Message]);

Por lo menos ese sería el código para Delphi. Sé que Free Pascal tiene algunas diferencias en su sintaxis con respecto a Delphi. Pero la clave está en devolver el tipo de excepción generado y el mensaje de ésta al explorador.

Nuevamente, requerirás que la petición POST se haga por medio del explorador. Hasta dónde llega mi experiencia con Indy, sé que cuando la petición genera un error (código 500), Indy descarta la respuesta, por lo que no podrás ver la información del error devuelta por el controlador que estás desarrollando.

El código para devolver información del error es simplemente lo que hacen los lenguages Script. Éstos, cuando hay un error en el código, simplemente escupen toda la información del error a la salida, en este caso la respuesta a una petición. Esto no es cierto para los lenguaje compilados, pues a como sabrás, lo típico que ellos devuelven es, por ejemplo: EAccessViolantion at address 0x000000..... Y no necesariamente a la salida.

Saludos,
Chris
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita