Ver Mensaje Individual
  #1  
Antiguo 03-07-2015
Avatar de lbidi
lbidi lbidi is offline
Miembro
 
Registrado: oct 2003
Ubicación: Montevideo- URUGUAY
Posts: 417
Reputación: 21
lbidi Va por buen camino
Problema accediendo a un servidor datasnap

Buenas tardes estimados.
He creado un servidor datasnap en el cual he creado una funcion que recibe como parametro un string en formato json para luego parsearlo e insertar datos en una bd.

Parte de su codigo es el siguiente:
Código Delphi [-]
function TServerMethods.Insertar_Usuario( data: string ): Integer;
var
    cNombres, cApellidos, cDireccion, cCedula, cSexo, cTelefono, cEmail : string;
    dFecha : TDate;
    nFicha : Double;
    jSon  : TJSONObject;
begin
    json := TJSONObject.ParseJSONValue(TEncoding.ASCII.GetBytes(data),0) as TJSONObject;
    try
        cNombres   := jSon.Get('nombres').JsonValue.Value;
        cApellidos := jSon.Get('apellidos').JsonValue.Value;
        cDireccion := jSon.Get('direccion').JsonValue.Value;
        dFecha     := StrToDate(jSon.Get('fecha_nacimiento').JsonValue.Value);
        cCedula    := jSon.Get('cedula').JsonValue.Value;
        cSexo      := jSon.Get('sexo').JsonValue.Value;
        cEmail     := jSon.Get('email').JsonValue.Value;
        cTelefono  := jSon.Get('telefono').JsonValue.Value;
    finally
        json.Free;
    end;
el parametro data tiene el siguiente formato

{"nombres":"aa","apellidos":"bb","direccion":"ccc","fecha_nacimiento":"01/01/2015","email":"hola", "telefono":"12222","cedula":"122211122","sexo":"M"}';

Al llamar al procedimiento desde mi navegador invocando dicha funcion con los mismos datos como parametro, el objeto "json" que obtengo siempre es nil.
He probado a definir el parametro con comillas simples y dobles en el cual el proceso no se efectua.
Si asigno dichos valores a una variable y ejecuto la funcion internamente fuera del navegador, funciona perfectamente, asi que algo debe pasar en la manera que la invoco desde el mismo.

Me resulta extraño que ademas tengo otras funciones a las cuales llamo tambien desde el navegador y funciona barbaro, solo que le paso numeros como parametros.

Alguna idea ??

Muchas gracias.
Responder Con Cita