KRnet 2006 발표자료 Web 2.0 and OpenAPI 2006.6. 이재광 leesop@nhncorp.com
웹 2.0 의요소 Web 2.0 의중요한요소 - 고립된정보와기능의저장소에서웹서비스의 플랫폼 으로변화 - 웹컨텐츠를만들고유통하는과정에서사용자들이적극적으로 참여 - 대중의지혜 를적극적으로활용 - 롱테일로상징되는웹의 새로운경제적가치 의창출 2
참고 : 웹 2.0 의특징 3
웹 2.0 과 OpenAPI 의위치 API 서비스의의미 : Web 2.0 에서의플랫폼화의가장핵심요소 : 기존의웹서비스가새로운서비스의기초가될수있도록컨텐츠, 주요기능등을 Feeding 이나 API 형식으로제공하는것 - 컨텐츠 Feed 의제공 : 뉴스, 블로그, 상품정보, 사진, 동영상, 북마크 - 플랫폼서비스의 API 제공 : 검색 (Google,A9 ), 지도 (Google,Yahoo ), AI 알고리즘 (Amazon,Yahoo ), - 어플리케이션서비스의 API 제공 : 캘린더, 워드, 스프레드쉬트, 상거래, 결제, 온라인스토리지 - 여러기능이조합된서비스가담겨질컨테이너서비스의제공 (Google Homepage, MS Start.com ) 이론적인웹서비스가아닌실제 working 하는웹서비스플렛폼 4
참고 : Mashup - 플랫폼화된환경에서의서비스모델 다양한컨텐츠 새로운결합서비스 뉴스, 블로그, 상품정보, 날씨정보, 사진, 동영상, 북마크, 교통정보 RSS/ATOM 컨텐츠피드 지도 + 임대정보, 블로그 + 캘린더, 다양한플랫폼 Google Map + Craiglist 검색, 지도, AI 알고리즘, 로그인, 광고 다양한 Apps API 제공 니즈에맞게적절히조합 컨테이너컴포넌트 컨테이너플랫폼에삽입가능한컴포넌트로제작 캘린더, 워드, 스프레드쉬트, 상거래, 결제, 온라인하드, 컨테이너 + 컴포넌트 5
OpenAPI 의현황 Pre-OpenAPI 시대 - Screen Scrapping - Meta Search - Hacked Service 2005, Housingmaps.com (by Paul Rademacher) - Google Maps + Craigslist hacking - Google Map API 오픈, Mashup 웹서비스기술의본격적인활용 - Web Services (SOAP) - REST (XML data over HTTP) - XML-RPC - AJAX (XML HTTP Object) 200 여개이상의 API 및각종서비스공개 http://www.programmableweb.com/apilist Web 2.0 Mashup Matrix http://www.programmableweb.com/matrix 6
참고 : SOAP SOAP(Simple Object Access Protocol) 1.1 Get list of books Get book details POST /Store.asmx HTTP/1.1... <soap:envelope...> <soap:body> <GetBookList/> </soap:body> </soap:envelope> POST /Store.asmx HTTP/1.1... <soap:envelope...> <soap:body> <GetBookDetails> <BookID>1234</BookID> </GetBookDetails> </soap:body> </soap:envelope> HTTP/1.1 200 OK... <soap:envelope...> <soap:body> <GetBookListResponse> <BookID>1234</BookID> <BookID>5678</BookID> </GetBookListResponse> </soap:body> </soap:envelope> HTTP/1.1 200 OK... <soap:envelope...> <soap:body> <GetBookDetailsResponse> <Book>...</Book> </GetBookDetailsResponse> </soap:body> </soap:envelope> Web Service Source : http://www.razorsoft.net/slides/restfulsoap.ppt 7
참고 : REST REST - 빠른속도, 형식의자유로움 Get list of books Get book details GET /books/ HTTP/1.1 GET /books/1234/ HTTP/1.1 HTTP/1.1 200 OK Content-type: text/xml... <?xml version="1.0"?> <books xmlns="..."> <book href="http://.../1234/"/> <book href="http://.../5678/"/> </books> HTTP/1.1 200 OK Content-type: text/xml... <?xml version="1.0"?> <book xmlns="..."> <title>moby Dick</title>...other book data... <order href="http://.../orders/"/> </book> Web Service Source : http://www.razorsoft.net/slides/restfulsoap.ppt 8
참고 : AJAX XMLHTTP Object - IE 4.0 으로부터시작 - Google Maps 등의사례로본격화 Source : http://www.nada.kth.se/kurser/kth/2d1363/ajaxlecture.ppt 9
OpenAPI 의해외주요현황 구글 - http://code.google.com - 9 개의주요서비스 API (Maps, Web, AdWords, Desktop, Blogger, ) - 지도 API 의경우북미외일본등세계지도지원개시 ( 한국도지원준비중 ) 야후 - http://developer.yahoo.com - 18개주요서비스 API - 야후재팬에서도서비스오픈 (http://developer.yahoo.co.jp) 아마존 - http://aws.amazon.com - 8개의주요서비스 API, 14만여명의개발자군보유 - 자회사 alexa 등을통해서다양한서비스제공 10
국내의 OpenAPI 서비스현황 네이버 OpenAPI http://openapi.naver.com 네이버검색및웹기반유용한서비스와정보의공개를통한개방 국내최초의이용자와오픈커뮤니티를위한 Mashup 지원서비스 11
국내의 OpenAPI 서비스현황 네이버 OpenAPI ( 상세 ) 1 차로검색을중심으로관련서비스 API 10 여개를공개 1) 블로그, 지식 in, 웹문서, 쇼핑, 책등 2) 서비스형서비스 : 추천서비스, 오타교정등 3) 정보서비스 : 실시간검색어순위, 바로가기정보등 REST (XML data over HTTP) 방식을기본으로일부변형 RSS Reader 를통한디버깅을위해일부 RSS 형식적용 기관, 학술, 비영리목적의이용을우선적으로지원 향후더많은서비스에대한 API 및지원확대추진 API 외에교육학술연구에필요한지원에대해서도검토예정 12
국내의 OpenAPI 서비스현황 네이버 OpenAPI ( 상세 ) Request : http://openapi.naver.com/search?query=go&display=5&start=1&target=kin Response : <channel> <title>naver Open API - kin ::'go'</title> <link>http://search.naver.com</link> <description>naver Search Result</description> <lastbuilddate>tue, 21 Mar 2006 11:36:01 +0900</lastBuildDate> <total>190288</total> <start>1</start> <display>5</display> <item> <title> 바둑이왜 <b>go</b> 인가요?</title> <link>http://kin.naver.com/db/detail.php?d1id=2&dir_id=20501&eid=vr+phcs834sgrx2noboacrg2fp/h8q+g</link> <description>... 발음은고 (<b>go</b>) 라고읽습니다. ( 다르게이고 ' 라고명칭하기도합니다 ) 이렇게최근에바둑과는상관없는젊은사람들도바둑이 <b>go</b> 라고알게된원인이... 하는데요. 이碁의발음을영문으로표기하면 <b>go</b> 가되겠죠. 바둑은중국에서... </description> </item> </channel> 13
국내의 OpenAPI 서비스현황 응용사례 1. - 서비스명 : 퀘스트글로브 여행정보디렉토리 - 서비스설명 : 네이버여행관련검색결과들을지역별 / 테마별로분류제공 - 사용 API : 지식 in, 블로그검색결과 API 사용 - 서비스 url : http://www.questglobe.com/ - 화면안 14
국내의 OpenAPI 서비스현황 응용사례 2. - 서비스명 : 테터툴즈용책검색플러그인 - 서비스설명 : 테터툴즈에서글을쓸때책제목 / 커버이미지 / 저자 / 출판사명을검색해서내용첨부할수있는플러그인 - 사용 API : 책검색결과 API - 서비스설명 url : http://cafe.naver.com/openapi/103 - 화면안 15
국내의 OpenAPI 서비스현황 응용사례 3. - 서비스명 : 블로그에네이버검색을연동 - 서비스설명 : 지식인, 웹문서, 블로그, 도서, 쇼핑등의검색결과를제공하고, 해당검색결과들을엮어서통합검색으로제공 - 사용 API : 지식인, 웹문서, 블로그, 도서, 쇼핑검색결과 API 사용 - 서비스 url : http://www.fly.co.kr/search.aspx - 화면안 16
국내의 OpenAPI 서비스현황 응용사례 4. - 서비스명 : itunes 앨범아트위젯 - 서비스설명 : itunes 를이용해서음반을재생하면, 네이버검색을통해서재생되는음반에대한앨범자켓정보를불러오게 - 사용 API : 검색결과 API 사용 - 서비스설명 url : http://cafe.naver.com/openapi/32 - 화면안 17
국내의 OpenAPI 서비스현황 응용사례 5. - 서비스명 : 구글개인화홈 + 실시간검색어 - 서비스설명 : 구글개인화홈에네이버추천검색어삽입 - 사용 API : 네이버실시간검색어 - 서비스설명 url : http://cafe.naver.com/openapi/120 - 화면안 18
정리, 향후전망 웹 2.0 의핵심가치 : 공유와참여, 플렛폼화를통한서비스개방 OpenAPI 의의의 : 웹 2.0 및플렛폼화를실현하는핵심요소 REST / XML-RPC / SOAP 등의방식으로구현 구글, 야후, MS 등 200 여개이상의회사가 API 를제공중, 600 여개이상의사례 국내포털에서는네이버가최초로 OpenAPI 를공식제공, 20 여개이상의사례 향후더욱다양한아이디어와서비스들이생겨나는바탕으로진화예상 19
고맙습니다 Q & A 20