Ver Mensaje Individual
  #5  
Antiguo 30-12-2019
Avatar de Kiranov
Kiranov Kiranov is offline
Miembro
 
Registrado: ago 2012
Ubicación: Chihuahua, Mexico.
Posts: 47
Reputación: 0
Kiranov Va por buen camino
Gracias por tu respuesta,

El servidor esta hecho en Delphi, es un servidor DataSnap el cual tiene la funcion que crea el resultado json de la siguiente manera:

Código Delphi [-]
function TServerMethods1.userinfo(const usuario,contrasena:string): TjsonObject;
var
  userinfo:tjsonobject;
begin
  try
    userinfo:=tjsonobject.Create;
    fdconnection1.Connected:=true;
    fdconnection1.Params.Database:='mibasededatos';
    fdquery1.SQL.Text:='SELECT * from sys_usercontrol WHERE userid=:userid AND passwd=PASSWORD(:userpasswd)';
    fdquery1.ParamByName('userid').AsString:=usuario;
    fdquery1.ParamByName('userpasswd').AsString:=contrasena;
    fdquery1.Open();
    if fdquery1.RecordCount>0 then
    begin
      userinfo.AddPair(TJSONPair.Create('id',fdquery1.FieldByName('id').AsString));
      userinfo.AddPair(TJSONPair.Create('passwd',fdquery1.FieldByName('passwd').AsString));
      userinfo.AddPair(TJSONPair.Create('username',fdquery1.FieldByName('username').AsString));
      userinfo.AddPair(TJSONPair.Create('useractive',TJSONBool.Create(fdquery1.FieldByName('useractive').A  sBoolean)));
      userinfo.AddPair(TJSONPair.Create('lastpwdchange',fdquery1.FieldByName('lastpwdchange').AsString));
      userinfo.AddPair(TJSONPair.Create('usedates',TJSONBool.Create(fdquery1.FieldByName('usedates').AsBoo  lean)));
      userinfo.AddPair(TJSONPair.Create('validfrom',fdquery1.FieldByName('validfrom').AsString));
      userinfo.AddPair(TJSONPair.Create('validto',fdquery1.FieldByName('validto').AsString));
      userinfo.AddPair(TJSONPair.Create('usrcanchngpwd',TJSONBool.Create(fdquery1.FieldByName('usrcanchngp  wd').AsBoolean)));
      userinfo.AddPair(TJSONPair.Create('usrgroups',fdquery1.FieldByName('usrgroups').AsString));
      userinfo.AddPair(TJSONPair.Create('fechaalta',fdquery1.FieldByName('fechaalta').AsString));
    end
    else
    begin
      userinfo.AddPair(tjsonpair.Create('ERROR','NO SE ENCONTRO EL USUARIO '+usuario))
    end;
  finally
    result:=userinfo;
  end;
end;

Sucede algo: Cuando tengo una form y le coloco los componentes que copio del REST Debugger, funciona de maravilla. Si invoco el recurdo REST desde el REST debugger o desde Postman, tambien el resultado me lo dan correcto ambas herramientas. Lo extraño es que al usar los mismos componentes pero dentro de un DataModule que se encuentra en una BPL es cuando me arroja el mensaje de "Response content is not a valid JSON". Solo cuando lo invoco desde los componentes del DataModule...

Saludos y gracias por la ayuda, esto me va volviendo cada vez mas loco jejeje...
__________________
Kiranov (Alberto Vega)
Chihuahua, Mexico.
---------------------------------------------------------------------------------
"El hardware es lo que hace a una máquina rápida;
el software es lo que hace que una máquina rápida se vuelva lenta."

Craig Bruce en 1990
---------------------------------------------------------------------------------
Responder Con Cita