Esta vídeo aula tem como objetivo ensinar como montar um servidor datasnap delphi xe3 e consumi-lo utilizando um cliente javascript. Para isso, foi utilizando os recursos do JQuery.
Mostro como preparar o delphi para que aceite chamadas de cliente desse tipo, e não somente de um cliente delphi.
Espero que gostem. Qualquer dúvida, sugestão ou comentário pode deixar que eu respondo. Abraços e bons estudos.
otimo video! parabens.
ResponderExcluiruma duvida tem os links dos fontes?
Muito obrigado...
ExcluirNão tenho mais os fontes, devo ter perdido ou apagado...
Abraços.
Você já tentou transferir um arquivo .pdf ou uma imagem do datasnap server para o client jQuery?
ResponderExcluirSeria o "download", já sim, funciona normalmente.
ExcluirUma pena que foi teste, e acabei jogando o código fora mas pode fazer que da certo sim.
Abraços.
Modifiquei o server adicionando os Headers conforme o video, adicionando CORS e quando chamo o método ReverseString usando JS, sempre dá OPTIONS, não envia o header de autenticação, por exemplo. Alguma sugestão.
ResponderExcluirOPTIONS http://192.168.110.128:8081/datasnap/rest/TServerMethods1/ReverseString/ABCD/ 500 (Internal Server Error)
OPTIONS http://192.168.110.128:8081/datasnap/rest/TServerMethods1/ReverseString/ABCD/ Invalid HTTP status code 500
XMLHttpRequest cannot load http://192.168.110.128:8081/datasnap/rest/TServerMethods1/ReverseString/ABCD/ Invalid HTTP status code 500
Deve ter alguma configuração errada. Faz um tempo que fiz esse vídeo já nem me lembro direito mas quando você está no debug realmente acontece esse erro mas só da primeira vez depois o método é chamado automaticamente com o tipo certo e funciona.
ExcluirTenta chamar os métodos atraves de um cliente feito em delphi também pra ver no que da.
Reveja as configurações e tal, tem alguma coisa boba que você esqueceu de fazer.
Abraços.
Obrigado por responder.
ResponderExcluirPrezado Anderson, você percebeu que está enviando a senha e usuário em texto puro ao chamar o método. Que qualquer um pode pegar as credenciais e utilizar seus métodos a seu bel-prazer?
Voltando ao comentário anterior. Sim. O datasnap parece instável em algumas vezes. Desligando autenticação, o projeto HTML5 pode invocar métodos remotamente fora do domínio. Com autenticação ativada, o projeto funciona apenas quando estiver hospedado no mesmo domínio do server-side.
Fora do domínio, fica dando response 401 - unauthorized. Nos meus testes, utilizando HTML5+JS independente, o datasnap (versão XE2 e XE3) inicialmente, retornava o código 500, como salientado, agora está retornando o código de status 401 - unauthorized.
Eu sei disso, eu fiz a vídeo aula apenas para demostrar que é possível fazer, e não um app que vai rodar em ambiente de produção.
ExcluirEsse erro é estranho, pq tenho projeto datasnap rodando completamente fora do dominio e com autenticação e funciona normalmente. Deve ter alguma coisa estranha na sua configuração.
Quando uso um DataModule, e tento carregar uma query com a conexao, exibe no such table xxxxx, sabe alguma coisa!?
ResponderExcluirMan Titanium Poker Playing Card - 3-in-1 Handful
ResponderExcluirMan Titanium Poker Playing titanium alloy Card. This poker titanium drill bits playing card is a cost of titanium classic titanium daith jewelry poker hand with ford fiesta titanium a classic shape, perfect for both beginners and advanced players.