HTTP/2 클라이언트는 2가지 인증 유형을 지원합니다: Basic Authentication 과 OAuth2 Authentication.
두 가지 인증 유형을 모두 처리하려면 OnHTTP2Authorization 이벤트를 사용하십시오.
서버가 Basic Authentication을 요청하는 헤더를 반환하면, OnHTTP2Authorization에 사용자 이름과 비밀번호를 설정하십시오.
oClient := TsgcHTTP2Client.Create(nil);
oClient.OnHTTP2Authorization := OnHTTP2AuthorizationEvent;
...
procedure OnHTTP2AuthorizationEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const AuthType, AuthData: string; var UserName, Password, aToken: string; var Handled: Boolean);
begin
if AuthType = 'Basic' then
begin
UserName := 'user';
Password := 'secret';
end;
end;
서버가 Bearer Token Authentication을 요청하는 헤더를 반환하면 OnHTTP2Authorization에 token을 설정하십시오.
oClient := TsgcHTTP2Client.Create(nil);
oClient.OnHTTP2Authorization := OnHTTP2AuthorizationEvent;
...
procedure OnHTTP2AuthorizationEvent(Sender: TObject; const Connection: TsgcHTTP2ConnectionClient; const AuthType, AuthData: string; var UserName, Password, aToken: string; var Handled: Boolean);
begin
if AuthType = 'Bearer' then
begin
aToken := 'bearer token';
end;
end;
다른 방법을 사용하여 Bearer Value를 얻어 이미 알고 있는 경우, 요청의 다음 속성을 사용하여 Bearer 값을 HTTP 헤더로 전달할 수 있습니다. HTTP 요청 메서드를 호출하기 전에 설정하기만 하면 됩니다:
TsgcHTTP2Client.Request.BearerAuthentication = trueTsgcHTTP2Client.Request.BearerToken = "< value of the token >"
HTTP/2 클라이언트와 함께 OAuth2 구성 요소를 사용하려면 다음 문서를 읽으십시오.