Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 1504 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia. 

Continuando minha briga com o Indy....

Estou consumindo uma API Rest e consegui gerar o token utilizando as dlls do openssl. 

Mas agora quando vou acessar passando o token somente recebo o erro abaixo:

 

image.thumb.png.4aec0b3c3a15e590082cffc18501a021.png

 

O conteúdo do token está correto. Se copio o memo e uso no PostMan a requisição funciona.

 

imagem removida informação sensível

O código eu estou fazendo conforme abaixo:

procedure TForm2.Button1Click(Sender: TObject);
var
   url : String;
   token : String;
   response : String;
   body : TStringStream;
begin
   url := 'https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/api/integracao/catalogo/produto';

   body := TStringStream.Create('{ "superBusca": "TERMINAL DE DIRECAO SANDERO" }', TEncoding.UTF8);

   http.Request.Clear;
   http.Request.ContentType := 'application/json';
   http.Request.BasicAuthentication := false;

   http.Request.CustomHeaders.Clear;
   http.Request.CustomHeaders.AddValue('Authorization' , 'Bearer ' + mToken.Text);

   response := http.Post(url, body);
   ShowMessage(response);
end;
 

Alguém tem alguma dica para me dar. Já tentei de tudo. 

 

Obrigado. 

 

Postado

Descobri. Baixei um monitor HTTP e vi que o componente estava trocando o token. Veja abaixo:

 

imagem removida informação sensível

 

Então depurei o fonte do indy e descobri que se a propriedade http.Request.Authentication tiver algum valor ele vai fazer isso. Então eu acrescentei o comando

   http.Request.Authentication := nil;

antes do post e funcionou. 

 

Obrigado Juliomar!

  • Este tópico foi criado há 1504 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.