TsgcHTTP2Client | HTTP/2 and OAuth2

OAuth2는 Google과 같은 여러 회사에서 사용하는 일반적인 권한 부여 방법입니다. Google API 중 하나를 사용하기 위해 Google 서버에 대해 인증하려면 일반적으로 OAuth2를 사용한 인증이 필요합니다.

 

sgcWebSockets는 HTTP/2 클라이언트에서 OAuth2를 지원합니다. TsgcHTTP_OAuth2의 인스턴스를 할당해야 하는 Authentication.Token.OAuth라는 속성이 있습니다.

 

GMail Google API에 연결하는 방법

Google API에 연결하려면, TsgcHTTP_OAuth2의 인스턴스를 생성하고 다음 데이터를 입력해야 합니다:

 


TsgcHTTP_OAuth1.AuthorizationServerOptions.AuthURL := 'https://accounts.google.com/o/oauth2/auth';
TsgcHTTP_OAuth1.AuthorizationServerOptions.TokenURL := 'https://accounts.google.com/o/oauth2/token';

TsgcHTTP_OAuth1.LocalServerOptions.IP := '127.0.0.1'; TsgcHTTP_OAuth1.LocalServerOptions.Port := 8080;
TsgcHTTP_OAuth1.OAuth2Options.ClientId := 'your client id'; TsgcHTTP_OAuth1.OAuth2Options.ClientSecret := 'your client secret';

 

OAuth2 클라이언트 구성 요소를 채운 후, TsgcHTTP2Client의 새 인스턴스를 생성하고 OAuth2 구성 요소를 HTTP/2 클라이언트에 Assign하십시오.

 


 TsgcHTTP2Client1.Authentication.Token.OAuth := TsgcHTTP_OAuth1;

 

마지막으로 yourname@gmail.com 계정의 메시지 목록을 가져오기 위한 요청을 수행하십시오

 


oStream := TStringStream.Create('');
Try
  TsgcHTTP2Client1.Get('https://gmail.googleapis.com/gmail/v1/users/yourname@gmail.com/messages', oStream);
  ShowMessage(oStream.DataString);
Finally
  oStream.Free;
End;