Ir para conteúdo
  • Cadastre-se

dev botao

Rest Request


Ver Solução Respondido por Juliomar Marchetti,
  • Este tópico foi criado há 330 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia, estou tentando fazer uma integração de boleto com o Banco do Brasil, usando o RestRequest, quando eu faço o POST pelo POSTMAN, vai tudo 100%, porem quando eu tento colocar em meu projeto delphi, da Bad Request.

Os parâmetros que eu tenho que passar sao:
- URL
Header
  - Authorization
  - Content_type
  - Content_lenght
  - Host
Body
  - Grand_Type
  - Scope

Passando somente estes, no POSTMAN funciona. porem em meu código não vai, irei deixar uma imagem do POSTMAN e meu código como exemplo, se puderem me ajudar, muito agradecido.
 

procedure TFRMFI056A.GeraToken;
var
  AuthHeaderValue: String;
  ClientId, ClientSecret: String;
  Content: TStringStream;
  ContentLength: string;
  RequestBody: TStringStream;
begin
  ClientId     := BaGeralModel.Clientidpixbb;
  ClientSecret := BaGeralModel.Clientsecretpixbb;
  try
    RESTClient4.BaseURL := 'https://oauth.hm.bb.com.br/oauth/token';

    AuthHeaderValue := 'Basic xxxxCodigoBasicAquixxxx;

    RESTRequest4.Params.AddHeader('Authorization', AuthHeaderValue);
    RESTRequest4.Params.ParameterByName('Authorization').Options := [poDoNotEncode];

    RequestBody := TStringStream.Create('grant_type=client_credentials&scope=cobrancas.boletos-requisicao+cobrancas.boletos-info');
    RESTRequest4.ClearBody;
    RESTRequest4.AddBody(RequestBody, TRESTContentType.ctAPPLICATION_X_WWW_FORM_URLENCODED);

    RESTRequest4.Params.AddHeader('Content-Type', 'application/x-www-form-urlencoded');
    ContentLength := IntToStr(RequestBody.Size);
    RESTRequest4.Params.AddHeader('Content-Length', ContentLength);

    // Adicionar Host ao cabeçalho
    RESTRequest4.Params.AddHeader('Host', 'oauth.hm.bb.com.br');

    try
      RESTRequest4.Execute;
      if RESTResponse4.StatusCode = 404 then
      begin
        // Exibir o conteúdo da resposta em um Memo ou mostrar uma mensagem de erro
        Memo1.Lines.Text := RESTResponse4.Content;
        ShowMessage('Erro 404: O recurso solicitado não foi encontrado.');
      end;
    except
      on E: Exception do
      begin
        // Exibir mensagem de erro genérica
        Memo1.Lines.Text := RESTResponse4.Content;
        ShowMessage('Erro ao tentar realizar a solicitação: ' + E.Message);
      end;
    end;

  finally

  end;
end;


 

Img2.png

Img3.png

Img1.png

Link para o comentário
Compartilhar em outros sites

1 minuto atrás, Juliomar Marchetti disse:

Mas porque se tem o ACBrBoleto e o mesmo já faz isso pra ti!

Acbr boleto nao faz o que eu quero, que é enviar imediatamente o boleto, fazer as consultas da situação de como esta, identificar que ja esta pago, tipo como o NFE funciona, ou faz e eu nao to sabendo ?

Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • Solution
10 minutos atrás, Douglas Conceição disse:

Acbr boleto nao faz o que eu quero, que é enviar imediatamente o boleto, fazer as consultas da situação de como esta, identificar que ja esta pago, tipo como o NFE funciona, ou faz e eu nao to sabendo ?

Já faz. para BB e mais bancos, oolha a lista abaixo

image.png

 

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores
8 minutos atrás, Douglas Conceição disse:

Cara, me ajudou muito. Já tinha feito a integração quase toda na mão, mas o que vale é a experiência, obrigado!

@Douglas Conceição Após usar o componente, caso tenha algum outro banco que precise e não tenhamos implementado você pode nos ajudar muito!

Toda contribuição é bem vinda!

Sucesso aí nas implementações!

  • Curtir 1
Consultor SAC ACBr

Alexandre de Paula
Ajude o Projeto ACBr crescer - Assine o SAC                    

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  ícone Discórdia Discord   

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

 

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.