728x90
안녕하세요, 일마레입니다.
요즘 업체들과 데이터 연동하기
위해 API를 많이 사용하시는데요.
아래 소스 확인하시고
업무에 참고해 보시기를 바랍니다!
var
idhttp :TIdHTTP;
RequestHeaders: TStringList;
RequestBody: TStringStream;
Response: TBytesStream;
IdHTTP : tidhttp;
rbstr: RawByteString;
URL, Res :String;
SSLHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
IdHTTP := TIdHTTP.Create(nil);
try
SSLHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
RequestHeaders := TStringList.Create;
RequestBody := TStringStream.Create('', TEncoding.UTF8);
Response := TStringStream.Create;
IdHTTP.Request.Clear;
{ 없어도 무방하지만 버전에 맞춰 작성
SSLHandler.SSLOptions.SSLVersions := [sslvTLSv1_2, sslvTLSv1_1];
}
IdHTTP.IOHandler := SSLHandler;
IdHTTP.Request.ContentType := 'application/json';
IdHTTP.Request.Accept := 'application/json';
{ token을 전송해야 하는 경우
IdHTTP.Request.CustomHeaders.AddValue('Authorization', token값 );
}
try
Res := '전달한 값(json)';
RequestBody.WriteString(Res);
URL := 'URL' ;
rbstr := IdHTTP.Post(URL, RequestBody);
except
on E: EIdHTTPProtocolException do
begin
ShowMessage('HTTP Protocol Exception: ' + E.Message);
ShowMessage ('HTTP Protocol Exception: ' + E.ErrorMessage);
ShowMessage ('Error Code: ' + IntToStr(E.ErrorCode));
end;
on E: Exception do
begin
ShowMessage ('General Exception: ' + E.Message);
end;
end;
finally
RequestHeaders.Free;
RequestBody.Free;
SSLHandler.Free;
IdHTTP.Free;
end;
end;
도움이 되셨기를 바라며,
좋은 하루 보내세요 ^^
728x90
LIST
'델파이' 카테고리의 다른 글
델파이/Delphi] FTP에서 이미지 내려 받기 (0) | 2024.07.11 |
---|---|
델파이/Delphi] TVirtualTable에 이미지 넣기 (0) | 2024.07.11 |
델파이/Delphi ] 심심해서 만들어본 lotto 게임 (0) | 2024.07.10 |
델파이/delphi] 유휴시간 체크 및 갱신하기 (0) | 2024.07.10 |
델파이/Delphi] Indy 설치하기 (2) | 2024.07.10 |