Fórum Problemas em conectar dispositivo android no servidor Datasnap #485727
16/07/2014
0
Estou com problemas em fazer uma aplicação android se comunicar com o servidor Datasnap.
Estou tentando fazer a aplicacao android fazer logon em um banco de dados atraves do servidor DataSnap, porém quando tento a conexão no dispositivo android aparece o erro HTTP/1.1 500 Internal Server Error.
Abaixo segue a função que esta no servidor DataSnap
function TSM.ValidaUsuario(Usuario : TJsonObject): String;
var
Par : TJSonPair;
begin
Par := TJsonPair.Create;
//login
par := Usuario.Get(0);
lusuario := Par.JsonValue.Value;
//senha
Par := usuario.Get(1);
lsenha := par.JsonValue.Value;
dm.Qry.Close;
dm.Qry.Params[00].AsString := lUsuario;
dm.Qry.Params[01].AsString := uCript.Criptografa(lSenha,108);
dm.Qry.Open;
if dm.Qry.IsEmpty = true then begin
result := 'No!';
end else begin
result := 'OK!';
end;
end;Abaixo segue o codigo que estou executando no dispositivo android.
procedure TfPrincipal.BtnConfirmarClick(Sender: TObject);
var
Contato : TJsonObject;
lJSO : String;
jSontoSend : TStringStream;
lResponse : String;
begin
if trim(edlogin.Text) = '' then begin
Showmessage('Campo login em branco, por favor preencha');
exit;
end;
if trim(edsenha.Text) = '' then begin
Showmessage('Campo Senha em branco, por favor preencha');
exit;
end;
Contato := TJsonObject.Create;
Contato.AddPair('login',TJsonString.Create(trim(edlogin.Text)));
Contato.AddPair('senha',TJsonString.Create(trim(edlogin.Text)));
lJSO := Contato.ToString;
jSontoSend := tStringStream.Create(lJSO,TEncoding.ASCII);
IdHTTP.Request.ContentType := 'application/json';
lResponse := IdHTTP.Post(URL+Path+'ValidaUsuario',jSontosend);
jSonToSend.Free;
ShowMessage (lresponse);
end;
Notem que estou tentando somente pegar o retorno da função via DataSnap conforme o trecho "ShowMessage (lresponse);" mas pelo que eu estou percebendo ele nem esta chegando a executar a função.
Poderiam me ajudar?
Obrigado.
Douglas Lucio
Curtir tópico
+ 0Post mais votado
22/09/2014
Contato := TJsonObject.Create;
Contato.AddPair('login',TJsonString.Create(trim(edlogin.Text)));
Contato.AddPair('senha',TJsonString.Create(trim(edlogin.Text)));
você esta passando o edlogin.Text tanto no login quanto na senha????
corrige e testa novamente, caso de errado te envio um exemplo que tenho aqui.
Leonardo Costa
Gostei + 1
Mais Posts
24/07/2014
Douglas Lucio
No aguardo.
Gostei + 0
24/07/2014
Fabiano Carvalho
Erro 500
Posso te ajudar somente nisso.
Gostei + 0
24/07/2014
Douglas Lucio
Muito obrigado pela atenção amigo...
Grande Abraço
Gostei + 0
11/08/2014
Douglas Lucio
Verifiquei sobre a questão do servidor do datasnap, porem esta acessando normalmente pelo browser, mas a aplicação continua a dar este erro, sera que alguém poderia postar um exemplo de código de validação de usuário no banco de dados no android via datasnap?
No aguardo
Gostei + 0
22/09/2014
Douglas Lucio
Bem observado amigo, porem o erro ainda persiste.
Poderia me ajudar?
No aguardo
Gostei + 0
23/09/2014
Douglas Lucio
Abraços
Gostei + 0
18/12/2016
Carlos Faria
Tambem preciso resolver esse mesmo erro urgente. já varri todos os foruns e nada até agora !
Gostei + 0
19/12/2016
Jones Granatyr
https://www.devmedia.com.br/como-depurar-aplicacoes-datasnap/37277
Gostei + 1
21/08/2018
Flávio Machado
Gostei + 0
31/08/2018
Luis Antonio
FireDAC.Stan.StorageJSON, FireDAC.Stan.StorageBin; <br />
Consegui ajustar o erro.<br />
Minha function recebe um arquivo TFDJSONDataSets, o erro (HTTP/1.1 500 Internal Server Error) apareceu do lado do webservice.<br />
<br />
Gostei + 0
22/01/2019
Cristiano Massaroli
<br />
Uso os mesmos parâmetros utilizando PostMan e está funcional.<br />
<br />
Será o meu programa?<br />
<br />
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)