Q&A

  • 환율정보 API를 사용할려고 하는데요..^^;

안녕하세요..고수님들, 

Delphi7 + Indy 10 을 사용하고 있습니다. 

한국수출입은행이 제공하는 환율정보를 가져올려고 합니다 .

https를 위해 ssleay32.dll, libeay32.dll 은 해당 폴더에 복사해서 통신에 문제없음은 확인 했습니다. 

다른 API를 통해 확인했습니다. 



procedure TForm1.up_Api_Koreaexim;

const cnToKen = ' -- 요건 제공받은 토큰 --';

var

  sUrl: Widestring;

  Code, searchword : AnsiString;

  DResult : TStringStream;


  OuterRoot, EntryNode:iXmlNode;

  i,j, nTotCnt, k, tPage: integer;

begin

  DResult := TStringStream.Create('');


  try                               

    code := HttpEncode(UTF8Encode(cnToKen)); //토큰

    searchword := HttpEncode(Utf8Encode(formatDateTime('yyyymmdd', now))); //검색어

           

    IdHttp1.IOHandler:= IdSSLIOHandlerSocketOpenSSL1;

    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvSSLv23;


    sUrl := 'https://www.koreaexim.go.kr/site/program/financial/exchangeJSON';


    // Get 방식 호출

    sUrl := sUrl + '?authkey=' + code + '&searchdate=20211119' + '&data=AP01';

    //IdHttp1.Request.ContentType := 'text/html';

    //IdHttp1.Request.ContentType := 'application/json';

    //IdHttp1.HTTPOptions := [hoForceEncodeParams];

    IdHttp1.get(sUrl, DResult);

  

  except 

    DResult.Free;

  end;

end; 


요렇게 했는데요. 아래와 <그림1>같이 페이지를 찾을수 없다고 나오네요..

크롭(python도 잘됨)의 주소에 위의 내용을 치면 <그림2>와 같이 잘 나오거든요.

무엇이 문제일까요? 제가 web쪽은 잘 몰라서^^;

다른 api에서 xml은 잘 되는거 같은데..

가이드 부탁드립니다. 


<그림1>그림이 안올라가서 텍스트로 간략히...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0.................................

.................

<body>

   <dis class="page_error"> <!--page_error -->

              <p><a href="#><img src="https://www.koreaexim.go.kr/files/web1/images/common/logo.gif" alt="한국수출입은행"/></a></p>

              <div class="error">

                     <p class="p1">페이지 정보가 없습니다.</p>

                     <p class="p2">요청하신 페이지를 찾을 수 없거나, 서버에서 삭제되었습니다.<br/>URL을 확인해 주세요.</p>

...........................               

<그림2>

https://www.koreaexim.go.kr/site/program/financial/exchangeJSON?authkey=토큰값&searchdate=20211118&data=AP01

를 주소에 치면 

[{"result":1,"cur_unit":"AED","ttb":"319.01","tts":"325.46","deal_bas_r":"322.24","bkpr":"322","yy_efee_r":"0","ten_dd_efee_r":"0","kftc_bkpr":"322","kftc_deal_bas_r":"322.24","cur_nm":"아랍에미리트 디르함"},{"result":1,"cur_unit":"AUD","ttb":"851.34","tts":"868.53","deal_bas_r":"859.94","bkpr":"859","yy_efee_r":"0","ten_dd_efee_r":"0","kftc_bkpr":"859","kftc_deal_bas_r":"859.94","cur_nm":"호주 달러"}]


0  COMMENTS