Ir para conteúdo
  • Cadastre-se

dev botao

http post --data com Synapse


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

Recommended Posts

eu preciso consumir um serviço do firebase:

curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]' \
-H 'Content-Type: application/json' \
--data-binary '{"email":"[[email protected]]","password":"[PASSWORD]","returnSecureToken":true}'

com indy eu uso assim (funciona):

Var
 lJsonStream: TStringStream;
 sUrlFull: String;
 AResponseContent: TStringStream;
 iStatusCode: Integer;
 sResponse: String;
 jsData: TJSONObject;
Begin
 sUrlFull := 'https://identitytoolkit.googleapis.com/v1/accounts:' + 'signInWithPassword' + '?key=' + sAPIKEY;
 jsData.AddPair('email', '[email protected]');
 jsData.AddPair('password', '1a2b3C');
 jsData.AddPair('returnSecureToken', TJSONBool.Create(True));

 lJsonStream := TStringStream.Create(UTF8Encode(jsData.ToJSON));
 AResponseContent := TStringStream.Create('');
 Try
  IdHTTP1.Request.UserAgent := 'Mozilla/5.0 (Windows NT 6.1; Win632; x86; rv:47.0) Gecko/20100101 Firefox/47.0';
  IdHTTP1.Request.ContentType := 'application/json';
  IdHTTP1.Post(sUrlFull, lJsonStream, AResponseContent);
  iStatusCode := IdHTTP1.ResponseCode;
  sResponse := AResponseContent.DataString;
 Finally
  Begin
   FreeAndNil(lJsonStream);
   FreeAndNil(AResponseContent);
  End;
 End;

com Net.HttpClient eu uso assim (funciona):

Var
 lJsonStream: TStringStream;
 lIdHTTP: THTTPClient;
 sUrlFull: String;
 AResponseContent: TStringStream;
 iStatusCode: Integer;
 sResponse: String;
 jsData: TJSONObject;
Begin
 sUrlFull := 'https://identitytoolkit.googleapis.com/v1/accounts:' + 'signInWithPassword' + '?key=' + sAPIKEY;
 jsData.AddPair('email', '[email protected]');
 jsData.AddPair('password', '1a2b3C');
 jsData.AddPair('returnSecureToken', TJSONBool.Create(True));

 lJsonStream := TStringStream.Create(UTF8Encode(jsData.ToJSON));
 AResponseContent := TStringStream.Create('');
 lIdHTTP := THTTPClient.Create;
 Try
  lIdHTTP.UserAgent := 'Mozilla/5.0 (Windows NT 6.1; Win632; x86; rv:47.0) Gecko/20100101 Firefox/47.0';
  lIdHTTP.ContentType := 'application/json';
  iStatusCode := lIdHTTP.Post(sUrlFull, lJsonStream, AResponseContent).StatusCode;
  sResponse := AResponseContent.DataString;
 Finally
  Begin
   FreeAndNil(lJsonStream);
   FreeAndNil(AResponseContent);
   FreeAndNil(lIdHTTP);
  End;
 End;

 a pergunta é como faço isso com Synapse já tentei de vários jeitos, já procurei no Google mas não consegui.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1667 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.