Datasnap rest php - Problemas na passagem de parâmetros. Zero a esquerda em parametros do tipo string.
Olá, boa tarde!
É a primeira vez que uso este forum, desculpe-me se estiver quebrando alguma regra de uso.
Situação: Tenho um servidor de aplicação feito em Delphi XE com a tecnologia Datasnap. Tenho um cliente em php feito em RADPHP que consome os serviços através de rest/json.
Assim sendo, a aplicação em RADPHP envia a seguinte url para buscar um dataset...
http://localhost:8084/datasnap/rest/TServerMethodsProcessoSeletivo/getCandidatoByCPF/9/2012-02/1/02749064651
no server printei os parametros e estes são:
9
2012-02
1
2749064651 (SE OBSERVAREM AO SAIR DO CLIENT E ENTRAR NO SERVER ESTÁ SUMINDO O ZERO A ESQUERDA DO PARAMETRO)
Como resolver a situação?
att.
É a primeira vez que uso este forum, desculpe-me se estiver quebrando alguma regra de uso.
Situação: Tenho um servidor de aplicação feito em Delphi XE com a tecnologia Datasnap. Tenho um cliente em php feito em RADPHP que consome os serviços através de rest/json.
Assim sendo, a aplicação em RADPHP envia a seguinte url para buscar um dataset...
http://localhost:8084/datasnap/rest/TServerMethodsProcessoSeletivo/getCandidatoByCPF/9/2012-02/1/02749064651
no server printei os parametros e estes são:
9
2012-02
1
2749064651 (SE OBSERVAREM AO SAIR DO CLIENT E ENTRAR NO SERVER ESTÁ SUMINDO O ZERO A ESQUERDA DO PARAMETRO)
Como resolver a situação?
att.
Leandra Vale
Curtidas 0
Respostas
Danilo Gomes
01/03/2013
Como está fazendo para ler esses parâmetros antes de printar?
GOSTEI 0
Leandra Vale
01/03/2013
Como está fazendo para ler esses parâmetros antes de printar?
olá, obrigada pelo interesse em ajudar.
A função no server recebe estas 4 strings... daí jogo estas strings em uma memo...
A questão é que a url http://localhost:8084/datasnap/rest/TServerMethodsProcessoSeletivo/getCandidatoByCPF/9/2012-02/1/02749064651, chama uma função no datasnap server com 4 parametros do tipo string e jogo estas strings que são recebidas na função em um memo.. daí vejo que o ultimo parametro que é 02749064651 tá sendo recebido como 2749064651.
Já conferi a url e o parametro passado é 02749064651, sendo recebido sem o zero a esquerda.
att.
GOSTEI 0
Danilo Gomes
01/03/2013
Perguntei porque, como PHP tem tipagem dinâmica, muito provavelmente essa conversão ocorre implicitamente.
Talvez, visualizando o modo de leitura fosse possível identificar.
Uma solução rápida, não ideal, seria passar uma letra no início do parâmetro e removê-la ao receber.
Como disse, é rápida, mas longe do ideal.
É preciso identificar quem faz essa conversão implícita.
Talvez, visualizando o modo de leitura fosse possível identificar.
Uma solução rápida, não ideal, seria passar uma letra no início do parâmetro e removê-la ao receber.
Como disse, é rápida, mas longe do ideal.
É preciso identificar quem faz essa conversão implícita.
GOSTEI 0
Leandra Vale
01/03/2013
Obrigada!
Tb. pensei nesta solução rápida. Mas o PHP está gerando a url sem retirar o zero... e a conversão está sendo feita acho que protocolo rest... que de alguma forma está entendendo o /0 diferente....
Tb. pensei nesta solução rápida. Mas o PHP está gerando a url sem retirar o zero... e a conversão está sendo feita acho que protocolo rest... que de alguma forma está entendendo o /0 diferente....
GOSTEI 0
Leandra Vale
01/03/2013
Olá.
É um bug do delphi xe que foi resolvido na Build: : 17.0.4625.53395.
Agora estou tentando baixar esta versão e atualizar o meu Xe.
É um bug do delphi xe que foi resolvido na Build: : 17.0.4625.53395.
Agora estou tentando baixar esta versão e atualizar o meu Xe.
GOSTEI 0
José
01/03/2013
Tópico concluído.
GOSTEI 0