ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Conexão WebService - Rest

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
Marcelo_Ribeiro
Aprendiz
Aprendiz


Registrado: Quarta-Feira, 17 de Fevereiro de 2010
Mensagens: 126

MensagemEnviada: Ter Fev 12, 2019 4:18 pm    Assunto: Conexão WebService - Rest Responder com Citação

Opa, boa tarde. Td bem? Estou com uma dúvida numa conexão num webservice.

Pra testes, me pediram pra instalar o Postman. Selecionando o tipo Post, informando o link, selecionando o menu Body e a opção form-data, informo o usuario e senha. Como ainda não tenho essa senha, quando envio, retorna usuário ou senha inválida. Até aí ok. Eu informaria esse usuário e senha pra pegar o token, e utilizar em outros métodos.

Tentei fazer a conexão pelo delphi pra ver se pelo menos retorna a mesma mensagem. Tentei desses jeitos:


Código:
     
    params := TIdMultiPartFormDataStream.Create;
     params.AddFormField('Username', 'mail@mail.com.br');
     params.AddFormField('Password', 'teste123');

     IdHTTP.Request.CustomHeaders.Clear;
     IdHTTP.Request.Clear;
     IdHTTP.Request.ContentEncoding := 'multipart/form-data';

     resultado:= IdHTTP.Post('http://site.com.br/Login', params);


Código:
   
JsonToSend := TStringStream.Create(
    '{"UserName": ' + '"email.com.br",' +
     '"Password": ' + '"123456"' +
    '}');


     IdHTTP.Request.CustomHeaders.Clear;
     IdHTTP.Request.Clear;
     IdHTTP.Request.ContentEncoding := 'multipart/form-data';
     idHttp.Response.ContentType := 'application/json';

     resultado:= IdHTTP.Post('http://site.com.br/Login',JsonToSend );


Código:
   
json :=
    '{"User": {"UserName": "' + 'mail.com.br' +
      '","Password": "' + '123456' +
    '"}}';

     JsonToSend := TStringStream.Create(Utf8Encode(Json));

     IdHTTP.Request.UserAgent:='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36';
     IdHTTP.Request.Accept := 'application/json, text/javascript, */*; q=0.01';
     IdHTTP.Request.ContentType := 'application/x-www-form-urlencoded; charset=UTF-8';

     resultado:= IdHTTP.Post('http://site.com.br/Login',JsonToSend );


Mas ou dá erro de Forbbiden ou Unsupported media type. No Postman, no Body->form-data, o code tá assim:

Código:

POST /Login HTTP/1.1
Host: site.com.br
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary
cache-control: no-cache
Postman-Token:

Content-Disposition: form-data; name="Username"

teste@teste.com.br

Content-Disposition: form-data; name="Password"

123456
------WebKitFormBoundary--

Tem algum jeito de fazer essa conexão de forma facil no delphi?

Tô apanhando pra caramba. Ainda não tinha mexido com integração via WS.
Valeu
Obrigado
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB