최신판 |
당신의 편집 |
37번째 줄: |
37번째 줄: |
| | | |
| == 활용 == | | == 활용 == |
− | [[파일:오픈API.PNG|600픽셀|가운데|섬네일|연도별 오픈 API 활용]]
| |
− | 위의 자료를 보면 근 5년간 오픈 API의 개방과 오픈 API 활용 건수가 꾸준히 증가하고 있는 것을 확인할 수 있다. 오픈 API의 사용은 여러 많은 분야에서 활발하게 사용되고 있다.<ref>수협은행 DIGITAL, 〈[https://m.post.naver.com/viewer/postView.nhn?volumeNo=27800881&memberNo=40974286&vType=VERTICAL 무한한 가능성을 보여줘! 오픈 API의 현재]〉, 《개인 블로그》, 2020-03-23</ref>
| |
− |
| |
| 오픈 API는 다양한 방식으로 활용 권한을 부여하지만 가장 기본적이고 대중적으로 허가받은 유저에게 서비스키를 발급한다. 따라서 오픈 API를 활용하기 위해선 보통 신청을 하고 키를 발급받는다. | | 오픈 API는 다양한 방식으로 활용 권한을 부여하지만 가장 기본적이고 대중적으로 허가받은 유저에게 서비스키를 발급한다. 따라서 오픈 API를 활용하기 위해선 보통 신청을 하고 키를 발급받는다. |
| 키를 사용하는 데 있어서도 대부분 소프(SOAP), 레스트(REST) 유형을 사용한다. | | 키를 사용하는 데 있어서도 대부분 소프(SOAP), 레스트(REST) 유형을 사용한다. |
80번째 줄: |
77번째 줄: |
| # 자체 확인 메시지 | | # 자체 확인 메시지 |
| # 하이퍼미디어의 애플리케이션 상태 | | # 하이퍼미디어의 애플리케이션 상태 |
− |
| |
− | === XML-RPC ===
| |
− | XML-RPC는 오픈 API를 사용하기 위한 또 다른 방법이다. RPC는 원격 프로시저 호출(Remote Procedure Call)의 약자로, 분산 컴퓨터 환경에서 이기종의 컴퓨터 자원을 사용하는 기술이다. RPC는 원격의 컴퓨터도 마치 자신의 컴퓨터에 존재하는 함수를 호출하는 것처럼 프로그램할 수 있게 만들어 준다. XML-RPC는 이 개념을 웹으로 옮겨온 것으로 프로그램에서 함수 호출을 하듯이 원격에 있는 사이트에 정보를 요청하고 받아올 수 있게 해준다. 이때 주고받는 인자와 리턴 값은 XML로 인코딩하고, 실제로 데이터를 전송하는 수송 수단(transport)으로는 범용적인 HTTP(POST)를 사용한다.
| |
− | XML-RPC는 누구나 쉽게 이해하고 사용할 수 있다. XML-RPC로 인코딩할 수 있는 정보는 배열, 베이스64 인코딩된 바이너리, 이진값, 날짜/시간, 실수(double), 정수(integer), 문자열, 구조체로 한정되어 있다.<ref> 서광열, 〈[https://butterguy.tistory.com/entry/%EC%98%A4%ED%94%88OpenAPI%EC%99%80-%EB%A7%A4%EC%8B%9C%EC%97%85Mashup%EC%84%9C%EB%B9%84%EC%8A%A4 오픈(Open)API와 매시업(Mashup)서비스]〉, 《티스토리》, 2016-10-13</ref>
| |
− |
| |
− | === 오픈 API 호출 URL ===
| |
− | 오픈 API를 호출하면 데이터를 XML 또는 JSON 형태로 얻을 수 있다. 오픈 API 호출 URL의 요청 변수에서 원하는 데이터 형태를 지정할 수 있는데, 명시적으로 지정하지 않으면 대부분 XML 형태로 데이터를 얻게 된다.
| |
− | 오픈 API를 XML 형태로 호출하면 XML 데이터를 얻을 수 있다. <ref name="임영훈"> 임영훈 책임, 〈[https://www.2e.co.kr/news/articleView.html?idxno=210202 공공데이터, 오픈API로 활용해보자 (2부) - 오픈API 호출 방법과 R을 이용한 오픈API 활용법]〉, 《투이컨설팅》, 2019-12-06</ref>
| |
− |
| |
− | === R을 활용한 오픈 API ===
| |
− | R은 오픈소스로 배포되어 누구나 무료로 사용할 수 있는 장점이 있으며 [[빅데이터]] 분석 목적으로 많이 사용되고 있다. R에는 인터넷에 접속하여 데이터를 주고받을 수 있는 기능과 XML 형태의 데이터를 처리할 수 있는 기능이 있다. <ref name="임영훈" />
| |
− |
| |
− | === 오픈 API 제공처 ===
| |
− | * 공공데이터포털(https://www.data.go.kr/)
| |
− | * 네이버 Developers 센터(https://developers.naver.com/main/)
| |
− | * 구글 디벨로퍼(https://developers.google.com/?hl=ko)
| |
− | * 페이스북 for 디벨로퍼(https://developers.facebook.com/)
| |
− | * 카카오톡 디벨로퍼(https://developers.kakao.com/)<ref> 프리모아, 〈[https://freemoa-blog.com/639 (개발) 개발시 국내 사용가능한 API 종류들]〉, 《개인 블로그》, 2016-10-13</ref>
| |
| | | |
| == 사례 == | | == 사례 == |
121번째 줄: |
100번째 줄: |
| * 코딩cheat sheet, 〈[https://godongyoung.github.io/%EC%BD%94%EB%94%A9cheat%20sheet/2019/05/22/Open-API-%ED%99%9C%EC%9A%A9%EB%B0%A9%EB%B2%95-%EC%A0%95%EB%A6%AC(%EA%B0%84%EB%8B%A8-%EC%84%A4%EB%AA%85).html (cheat sheet)Open API 활용방법 정리(간단 설명)]〉, 《개인 블로그》, 2019-05-22 | | * 코딩cheat sheet, 〈[https://godongyoung.github.io/%EC%BD%94%EB%94%A9cheat%20sheet/2019/05/22/Open-API-%ED%99%9C%EC%9A%A9%EB%B0%A9%EB%B2%95-%EC%A0%95%EB%A6%AC(%EA%B0%84%EB%8B%A8-%EC%84%A4%EB%AA%85).html (cheat sheet)Open API 활용방법 정리(간단 설명)]〉, 《개인 블로그》, 2019-05-22 |
| * 이상익 이사, 〈[https://www.2e.co.kr/news/articleView.html?idxno=210228 오픈API와 오픈 플랫폼의 구성요소 (1부) - 오픈API란 무엇인가?]〉, 《투이컨설팅》, 2019-12-06 | | * 이상익 이사, 〈[https://www.2e.co.kr/news/articleView.html?idxno=210228 오픈API와 오픈 플랫폼의 구성요소 (1부) - 오픈API란 무엇인가?]〉, 《투이컨설팅》, 2019-12-06 |
− | * 수협은행 DIGITAL, 〈[https://m.post.naver.com/viewer/postView.nhn?volumeNo=27800881&memberNo=40974286&vType=VERTICAL 무한한 가능성을 보여줘! 오픈 API의 현재]〉, 《개인 블로그》, 2020-03-23
| |
− | * 임영훈 책임, 〈[https://www.2e.co.kr/news/articleView.html?idxno=210202 공공데이터, 오픈API로 활용해보자 (2부) - 오픈API 호출 방법과 R을 이용한 오픈API 활용법]〉, 《투이컨설팅》, 2019-12-06
| |
− | * 서광열, 〈[https://butterguy.tistory.com/entry/%EC%98%A4%ED%94%88OpenAPI%EC%99%80-%EB%A7%A4%EC%8B%9C%EC%97%85Mashup%EC%84%9C%EB%B9%84%EC%8A%A4 오픈(Open)API와 매시업(Mashup)서비스]〉, 《티스토리》, 2016-10-13
| |
− | * 프리모아, 〈[https://freemoa-blog.com/639 (개발) 개발시 국내 사용가능한 API 종류들]〉, 《개인 블로그》, 2016-10-13
| |
| | | |
| == 같이 보기 == | | == 같이 보기 == |
130번째 줄: |
105번째 줄: |
| * [[프라이빗 API]] | | * [[프라이빗 API]] |
| | | |
− | {{시스템 연계|검토 필요}} | + | {{프로그래밍|검토 필요}} |