KR20110027411A - 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법 - Google Patents

오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법 Download PDF

Info

Publication number
KR20110027411A
KR20110027411A KR1020090085487A KR20090085487A KR20110027411A KR 20110027411 A KR20110027411 A KR 20110027411A KR 1020090085487 A KR1020090085487 A KR 1020090085487A KR 20090085487 A KR20090085487 A KR 20090085487A KR 20110027411 A KR20110027411 A KR 20110027411A
Authority
KR
South Korea
Prior art keywords
open api
proxy server
providing
web
data
Prior art date
Application number
KR1020090085487A
Other languages
English (en)
Other versions
KR101117762B1 (ko
Inventor
이혁준
안병현
Original Assignee
광운대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 광운대학교 산학협력단 filed Critical 광운대학교 산학협력단
Priority to KR1020090085487A priority Critical patent/KR101117762B1/ko
Publication of KR20110027411A publication Critical patent/KR20110027411A/ko
Application granted granted Critical
Publication of KR101117762B1 publication Critical patent/KR101117762B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명에 따른 오픈 API 제공 프록시 서버는 사용자로부터 요청된 위젯 서비스를 분석하는 오픈 API 모듈; 상기 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청하고, 상기 요청된 웹 콘텐츠를 상기 웹 서버로부터 수신하는 HTTP 통신 모듈; 및 상기 수신된 웹 콘텐츠를 파싱하여, 상기 위젯 서비스를 위한 데이터를 추출하는 웹 콘텐츠 파싱 모듈를 포함하고, 상기 오픈 API 모듈이 상기 추출된 데이터를 상기 사용자에게 전송하는 것을 특징으로 함으로써, 웹 사이트 사업자는 자신의 웹 서버에 아무런 변경을 가하지 않고도, 프록시 서버를 통해서 위젯 서비스를 위한 오픈 API를 제공할 수 있다.

Description

오픈 API 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법{A proxy server providing an Open Application Programming Interface and method providing Widget service using the proxy server}
본 발명은 위젯 서비스를 위한 오픈 API(application programming interface)를 제공해주는 프록시(proxy) 서버에 관한 것으로, 더욱 상세하게는 웹 위젯과 모바일 위젯을 개발 및 사용할 수 있도록 오픈 API를 제공해주는 프록시 서버 및 이를 이용한 위젯 서비스 제공방법에 관한 것이다.
오픈 API(application programming interface)는 현재 웹 2.0 기술 중 대표적인 것으로써, 웹에서 사용할 수 있는 기능들을 특정 회사들이 무료로 제공해 주고 사용자는 그 기능을 가져다 자신의 프로그램에 조립해서 또 다른 프로그램을 만들 수 있는 환경을 제공해주는 개방된 API의 집합이다.
오픈 API는 네이버, 다음, 야후 등의 포털사이트가 제공하는 검색, 지도 등의 서비스를 여러 웹 사이트에서 활용할 수 있도록 API와 콘텐츠를 개방해 놓은 것을 말한다. 예컨대, 보다 세밀한 지도를 필요로 하는 부동산 사이트는 각 포털사이트가 개방해 놓은 지도 서비스를 끌어와 본 사이트에서 그대로 사용할 수 있다. 즉, 포털사이트는 누구나 오픈 API를 사용하게 함으로써 더 많은 사용자를 확보할 수 있다.
위젯(Widget)은 자주 이용하는 서비스를 아이콘 형태로 제작해 독립적으로 구동시키는 작은 애플리케이션으로써, 콘텐츠를 제공하는 포털사이트 등을 방문하지 않고도 다양한 기능을 이용할 수 있어 이용이 매우 간편하다. 위젯은 특히 개인의 선택에 따라 다양한 조합으로 이용할 수 있기 때문에 개인화 맞춤 서비스의 기반이 되고 있다.
가장 기본적인 위젯 서비스는 계산기나 시계, 메모와 같이 자주 쓰는 간단한 기능을 바탕화면에 띄워놓고 바로바로 이용할 수 있도록 한 데스크탑 위젯이며, 네이버 위젯, 야후 위젯 등 포털사이트에서 다운로드 서비스를 제공하며 대중화됐다. 웹 위젯은 블로그나 개인화 포털 등에 삽입되는 작은 기능창으로써 사이트를 방문한 사람들이 함께 이용할 수 있다. 모바일 위젯은 핸드폰에서 위젯 기능을 화면에 적용하여 사용자가 원하는 사이트로 편하고 신속하게 이동할 수 있는 기능을 사용자 인터페이스(UI)로 적용한 것이다. 위젯 서비스가 이처럼 다양하게 발전하며 인기를 끌고 있는 이유는, 우선 자주 찾는 정보에 대한 접근 경로를 최소화한다는 것, 기능에 제약이 없어 다양한 기능을 소화할 수 있다는 것, 동일한 사용자 인터페이스로 어디에나 붙일 수 있다는 점이다.
이러한 대부분의 위젯은 오픈 API를 통해 개발되고 사용된다. 네이버, 다음, 야후, 구글 등의 사이트가 자신의 서비스를 활용할 수 있도록 오픈 API 및 오픈 API 매뉴얼 등을 제공함으로써, 개발자는 위젯을 개발할 수 있으며 사용자는 위젯 을 사용할 수 있다.
하지만 위젯의 다양한 응용 가능성에도 불구하고, 현재 위젯 서비스를 위한 오픈 API를 제공하는 웹 사이트가 많지 않아서 다양한 위젯 개발 및 사용에는 큰 어려움이 따른다. 특히, 웹 사이트 사업자가 오픈 API를 제공하기 위해서 기존의 웹 서버 구조를 변경하거나 웹 서버 리소스를 수정해야 하는 어려움이 있다. 따라서, 웹 사이트 사업자가 웹 서버 구조를 변경하지 않고서도, 사용자가 손쉽게 이용할 수 있는 오픈 API를 제공하기 위한 기술이 요구된다.
본 발명이 해결하고자 하는 기술적 과제는 기존의 웹 서버 구조 또는 웹 서버 리소스를 변경하지 않고 기존 웹 서버에 위젯 서비스를 위한 프록시 서버를 추가하여, 이 프록시 서버로 하여금 오픈 API와 오픈 API 매뉴얼을 제공함으로써, 개발자가 위젯 개발을 가능하도록 하는 것은 물론, 사용자가 위젯을 사용할 수 있도록 하는 오픈 API 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법에 관한 것이다.
상기의 과제를 이루기 위해, 본 발명에 의한 오픈 API 제공 프록시 서버는 사용자로부터 요청된 위젯 서비스를 분석하는 오픈 API 모듈; 상기 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청하고, 상기 요청된 웹 콘텐츠를 상기 웹 서버로부터 수신하는 HTTP 통신 모듈; 및 상기 수신된 웹 콘텐츠를 파싱하여, 상기 위젯 서비스를 위한 데이터를 추출하는 웹 콘텐츠 파싱 모듈를 포함하고, 상기 오픈 API 모듈이 상기 추출된 데이터를 상기 사용자에게 전송하는 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버는, 상기 추출된 데이터를 소정 데이터 포맷으로 가공하는 데이터 가공 모듈을 더 포함하는 것을 특징으로 한다.
상기 데이터 가공 모듈은, 상기 추출된 데이터를 XML(eXtensible Markup Language) 및 JSON(JavaScript Object Notation) 중 어느 하나의 데이터 포맷으로 가공하는 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버는, 캐싱이 필요한 경우에, 상기 추출된 데이터를 저장하는 로컬 스토리지를 더 포함하는 것을 특징으로 한다.
상기 로컬 스토리지는, 데이터 베이스 또는 일반 파일 중 어느 하나에 해당하는 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버는, 오픈 API 매뉴얼을 제공하는 매뉴얼 제공모듈을 더 포함하는 것을 특징으로 한다.
상기 매뉴얼 제공 모듈은, 오픈 API 목록 및 사용법을 웹 페이지 및 문서 파일 중 어느 하나의 형태로 제공하는 것을 특징으로 한다.
상기 웹 콘텐츠는, 웹 페이지 데이터, 웹 서비스 데이터, 및 그림, 음성, 동영상을 포함하는 멀티미디어 데이터를 포함하는 것을 특징으로 한다.
상기의 다른 과제를 이루기 위해, 본 발명에 의한 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은 사용자로부터 요청된 위젯 서비스를 분석하는 단계; 상기 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청하는 단계; 상기 웹 서버로부터 수신된 웹 콘텐츠를 파싱하여, 상기 위젯 서비스를 위한 데이터를 추출하는 단계; 및 상기 추출된 데이터를 상기 사용자에게 전송하는 단계를 포함하는 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은, 상기 추출된 데이터를 소정 데이터 포맷으로 가공하는 단계를 더 포함하는 것을 특징으로 한다.
상기 소정 데이터 포맷은 XML(eXtensible Markup Language) 및 JSON(JavaScript Object Notation)를 포함하는 데이터 포맷인 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은, 캐싱이 필요한 경우에, 상기 추출된 데이터를 로컬 스토리지에 저장하는 단계를 더 포함하는 것을 특징으로 한다.
상기 추출된 데이터를 로컬 스토리지에 저장하는 단계는, 상기 로컬 스토리지로서 데이터 베이스 또는 일반 파일 중 어느 하나에 상기 추출된 데이터를 저장하는 것을 특징으로 한다.
상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은, 오픈 API 매뉴얼을 제공하는 단계를 더 포함하는 것을 특징으로 한다.
상기 오픈 API 매뉴얼을 제공하는 단계는, 오픈 API 목록 및 사용법을 웹 페이지 및 문서 파일 중 어느 하나의 형태로 제공하는 것을 특징으로 한다.
상기 웹 콘텐츠는, 웹 페이지 데이터, 웹 서비스 데이터, 및 그림, 음성, 동영상을 포함하는 멀티미디어 데이터를 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따르면, 웹 사이트 사업자는 자신의 웹 서버를 변경하지 않고, 프록시 서버를 통해 위젯 서비스를 위한 오픈 API를 제공할 수 있다.
또한, 오픈 API를 개방함으로써 이제까지 없었던 새로운 아이디어의 위젯을 개발할 수 있도록 한다. 따라서, 이렇게 만들어진 혁신적인 위젯으로 인해 이용률이 증가하면 웹 사이트 사업자, 개발자, 광고주, 사용자 모두에게 이득이 돌아가도록 하는 효과가 있다.
또한, 보다 많은 웹 사이트가 손쉽게 오픈 API를 제공할 수 있으며 아울러 웹 환경을 보다 다양화 할 수 있다. 따라서, 오픈 API를 통해 이용환경이 보다 넓어지고 자연히 콘텐츠량이 많아지게 되며 새로운 서비스도 많이 생겨날 수 있다.
이하, 본 발명에 의한 오픈 API 제공 프록시 서버를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 본 발명에 따른 오픈 API 제공 프록시 서버를 설명하기 위한 일 실시예의 블록도로서, 프록시 서버(100), 사용자(200) 및 웹 서버(300)를 포함한다.
프록시 서버(100)는 위젯 서비스를 위한 오픈 API를 사용자(200)에게 제공한다. 사용자(200)는 오픈 API를 이용하여 위젯 서비스를 수행하는 클라이언트에 해당한다. 웹 서버(300)는 웹 사이트 혹은 웹 서비스를 제공하는 네트워크 서버이다.
이하에서는 프록시 서버(100)을 중심으로 상세히 설명한다. 프록시 서버(100)는 사용자(200)에 대해 서버 역할을 수행하고, 웹 서버(300)에 대해 클라이언트 역할을 수행한다. 이를 위해, 프록시 서버(100)는 오픈 API 모듈(110), HTTP 통신 모듈(120), 웹 콘텐츠 파싱 모듈(130), 데이터 가공 모듈(140), 로컬 스토리지(150), 매뉴얼 제공 모듈(160)을 포함한다.
오픈 API 모듈(110)은 사용자로부터 네트워크(10)를 통해 요청된 위젯 서비스를 분석하고, 분석한 결과를 HTTP 통신 모듈(120)로 출력한다. 오픈 API 모듈(110)은 각 오픈 API를 정의하고, 사용자(200)로부터 각 오픈 API에 대한 요청을 받았을 때, 사용자(200)가 요청한 위젯 서비스의 종류를 분석하고, 그에 대한 분석 결과를 출력한다. 또한, 후에 기술하는 바와 같이, 그에 해당하는 요청을 처리하여 다시 사용자(200)에게 응답한다.
HTTP 통신 모듈(120)은 오픈 API 모듈(110)의 분석 결과에 대응하는 웹 콘텐츠를 웹 서버(300)에 요청하고, 요청된 웹 콘텐츠를 웹 서버(300)로부터 수신한다. HTTP 통신 모듈(120)은 오픈 API가 필요로 하는 데이터를 얻기 위해서, 웹 서버(300)로 해당 웹 요청 신호를 출력하고 이에 대한 응답으로 웹 서버(300)로부터 웹 콘텐츠를 수신하는 것이다. 이때, 웹 콘텐츠는 웹 페이지 데이터, 웹 서비스 데이터, 또는 그림, 음성, 동영상 같은 멀티미디어 데이터가 될 수 있다.
웹 서버(300)는 웹 사이트 혹은 웹 서비스를 통해 웹 콘텐츠를 제공하는 네트워크 서버로서, 프록시 서버(100)로부터 위젯 서비스에 대응하는 웹 요청신호를 수신하면, 이에 대응하는 웹 콘텐츠를 프록시 서버(100)로 출력한다.
HTTP 통신 모듈(120)은 웹 서버(300)로부터 웹 콘텐츠를 수신하고, 수신된 웹 콘텐츠를 웹 콘텐츠 파싱 모듈(130)로 출력한다.
웹 콘텐츠 파싱 모듈(130)은 HTTP 통신 모듈(120)을 통해 수신된 웹 콘텐츠를 파싱하여, 위젯 서비스를 위한 데이터를 추출하고, 추출된 데이터를 데이터 가공 모듈(140) 또는 로컬 스토리지(150)로 출력한다. 웹 콘텐츠 파싱 모듈(130)은 추출된 데이터를 분석하여 로컬 스토리지(150)에 캐싱할 필요가 있는지를 판단한다. 캐싱의 필요성은 웹 콘텐츠의 실시간 제공 필요성 여부에 달려있다. 해당 웹 콘텐츠가 실시간 제공하지 않아도 되는 데이터에 해당하는 경우에는, 웹 콘텐츠 파싱 모듈(130)은 시스템의 효율성을 위해 추출된 데이터를 로컬 스토리지(150)에 캐 싱한다. 로컬 스토리지(150)는 데이터 베이스 혹은 일반 파일이 될 수 있다. 로컬 스토리지(150)는 웹 콘텐츠 파싱 모듈(130)에서 제공된 추출 데이터를 저장하고, 이 후에 동일한 웹 콘텐츠에 대한 위젯 서비스 요청이 있을 경우에, 저장된 데이터를 데이터 가공 모듈(140)로 출력한다.
만일, 웹 콘텐츠가 실시간 제공될 필요가 있는 것인 경우에는, 웹 콘텐츠 파싱 모듈(130)은 추출된 데이터를 로컬 스토리지(150)로 출력하지 않고, 데이터 가공 모듈(140)로 출력한다.
데이터 가공 모듈(140)은 웹 콘텐츠 파싱 모듈(130)에서 추출된 데이터를 소정 데이터 포맷으로 가공하고, 가공된 데이터를 오픈 API 모듈(110)로 출력한다. 데이터 가공 모듈(140)은 추출된 데이터를 XML(eXtensible Markup Language), JSON(JavaScript Object Notation) 또는 그 외의 다른 텍스트 포맷으로 가공할 수 있다.
오픈 API 모듈(110)은 데이터 가공 모듈(140)에서 가공된 데이터를 수신하고, 수신된 가공 데이터를 네트워크(10)을 통해 사용자(200)에게 전송한다.
사용자(200)는 오픈 API 모듈(110)로부터 위젯 서비스를 위한 데이터를 수신하고, 이 데이터를 사용해 위젯 서비스를 제공한다. 사용자(200)가 제공하는 위젯 서비스는 웹 위젯 또는 모바일 위젯 등이 될 수 있다.
한편, 프록시 서버(100)는 오픈 API 매뉴얼을 제공하는 매뉴얼 제공모듈(160)을 더 포함할 수 있다. 매뉴얼 제공 모듈(160)은 오픈 API 목록 및 사용법을 나타낸 매뉴얼을 제공한다. 사용자(200)가 네트워크(10)를 통해 프록시 서 버(100)로 오픈 API 매뉴얼을 요청하게 되면, 프록시 서버(100)의 매뉴얼 제공 모듈(160)은 오픈 API 목록 및 사용법을 사용자(200)에게 전송한다. 이때, 매뉴얼 제공 모듈(160)은 오픈 API 목록 및 사용법을 웹 페이지 및 문서 파일 중 어느 하나의 형태로 사용자(200)에게 제공할 수 있다. 개발자는 이러한 오픈 API 매뉴얼을 통해 웹 위젯 또는 모바일 위젯을 개발할 수 있다.
전술한, 본원발명에 해당하는 오픈 API 제공 프록시 서버의 각 구성요소에 대해, 예를 들어 설명한다. 프록시 서버(100)가 기상청 웹 서버로부터 도시별 날씨 정보를 얻을 수 있는 getWeather()라는 이름의 오픈 API를 제공하고 있으며, getWeather() 오픈 API를 이용하는 사용자(200)가 있다고 가정한다. 사용자(200)는 프록시 서버(100)로 getWeather() 오픈 API를 요청한다. 이 요청을 오픈 API 모듈(110)이 수신하여 분석한 후에, getWeather() 오픈 API에 대한 요청임을 확인하고, 분석 결과를 HTTP 통신 모듈(120)로 출력한다. 그 후, HTTP 통신 모듈(120)은 분석 결과에 따른 웹 콘텐츠를 얻을 수 있는 웹 서버(300)로 웹 요청신호를 전송한다. 이 경우, HTTP 통신 모듈(120)은 도시별 날씨 정보를 제공하는 “http://www.kma.go.kr/cgi-bin/sfc/nph-sfc_tm_now”로 웹 페이지 요청을 한다. 웹 서버(300)가 상기 요청 신호에 따라 웹 콘텐츠를 프록시 서버(100)로 전송하면, HTTP 통신 모듈(120)은 웹 콘텐츠를 수신하고, 이 웹 콘텐츠를 웹 콘텐츠 파싱 모듈(130)로 출력한다. 웹 콘텐츠가 HTML 웹 페이지일 경우, 웹 컨텐츠 내용물 안에는 도시별 정보뿐만 아니라 HTML 태그, 주석, 또는 불필요한 문자열 등이 포함되어 있을 수 있다. 웹 콘텐츠 파싱 모듈(130)은 이러한 웹 콘텐츠를 파싱하여, 도시별 날씨 정보 등과 같은 필요한 데이터만을 추출하고, 추출된 데이터를 데이터 가공 모듈(140) 또는 로컬 스토리지(150)로 출력한다. 추출된 데이터는 시스템의 효율성을 높이고자 로컬 스토리지(150)에 캐싱될 수도 있으며, 경우에 따라서는 로컬 스토리지(150)가 사용되지 않을 수도 있다. 데이터 가공 모듈(140)은 추출된 데이터를 가공하여 XML(eXtensible Markup Language), JSON(JavaScript Object Notation), 또는 그 이외 다른 텍스트 포맷과 같은 특정 데이터 포맷으로 가공 및 생성한다. 그 후, 오픈 API 모듈(110)은 이렇게 생성된 데이터를 사용자(200)에게 전송한다.
이하, 본 발명에 의한 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법을 첨부된 도면을 참조하여 상세히 설명한다.
도 2는 본 발명에 따른 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법을 설명하기 위한 일 실시예의 플로차트이다.
먼저, 사용자로부터 요청된 위젯 서비스를 분석한다(제400 단계). 사용자로부터 요청된 위젯 서비스의 종류를 분석하고, 그에 대한 분석 결과를 출력한다.
제400 단계 후에, 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청한다(제402 단계). 웹 서버는 웹 사이트 혹은 웹 서비스를 통해 웹 콘텐츠를 제공하는 네트워크 서버로서, 프록시 서버(100)로부터 위젯 서비스에 대응하는 웹 요청신호를 수신하면, 이에 대응하는 웹 콘텐츠를 프록시 서버(100)로 전송한다. 이때, 웹 콘텐츠는 웹 페이지 데이터, 웹 서비스 데이터, 또는 그림, 음성, 동영상 같은 멀티미디어 데이터가 될 수 있다.
제402 단계 후에, 웹 서버로부터 수신된 웹 콘텐츠를 파싱하여, 위젯 서비스를 위한 데이터를 추출한다(제404 단계). 수신된 웹 콘텐츠를 파싱하여, 위젯 서비스를 위한 데이터를 추출한다.
제404 단계 후에, 캐싱이 요구되는가를 판단한다(제406 단계). 추출된 데이터를 분석하여 로컬 스토리지(150)에 캐싱할 필요가 있는지를 판단한다. 캐싱의 필요성은 웹 콘텐츠의 실시간 제공 필요성 여부에 달려있다. 해당 웹 콘텐츠가 실시간 제공하지 않아도 되는 데이터에 해당하는 경우에는, 제408 단계로 진행한다. 그러나, 웹 콘텐츠가 실시간 제공될 필요가 있는 것인 경우에는, 제410 단계로 진행한다.
만일, 캐싱이 요구된다면, 추출된 데이터를 로컬 스토리지에 저장한다(제408 단계). 로컬 스토리지로서 데이터 베이스 또는 일반 파일 중 어느 하나에 상기 추출된 데이터를 저장한다. 로컬 스토리지(150)는 이 후에 동일한 웹 콘텐츠에 대한 위젯 서비스 요청이 있을 경우에, 저장된 데이터를 출력한다.
제406 단계 또는 제408 단계 후에, 추출된 데이터를 소정 데이터 포맷으로 가공한다(제410 단계). 소정 데이터 포맷으로서 XML(eXtensible Markup Language) 및 JSON(JavaScript Object Notation) 또는 그 외의 다른 텍스트 포맷으로 가공할 수 있다.
제410 단계 후에, 가공된 데이터를 사용자에게 전송한다(제412 단계). 사용자(200)는 프록시 서버(100)로부터 위젯 서비스를 위한 가공 데이터를 수신하고, 이 데이터를 사용해 위젯 서비스를 제공한다. 사용자(200)가 제공하는 위젯 서비스 는 웹 위젯 또는 모바일 위젯 등이 될 수 있다.
한편, 본 발명에 따른 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은 오픈 API 매뉴얼을 제공하는 단계를 더 포함할 수 있다. 오픈 API 매뉴얼은 오픈 API 목록 및 사용법을 나타낸 매뉴얼이다. 이러한 오픈 API 목록 및 사용법은 웹 페이지 및 문서 파일 중 어느 하나의 형태로 사용자(200)에게 제공된다.
오픈 API 매뉴얼을 제공하는 단계는 전술한 각 단계 중 어느 단계에서도 수행될 수 있다. 즉, 사용자(200)가 프록시 서버(100)로 오픈 API 매뉴얼을 요청하게 되면, 프록시 서버(100)는 오픈 API 목록 및 사용법을 사용자(200)에게 전송한다. 개발자는 이러한 오픈 API 매뉴얼을 통해 웹 위젯 또는 모바일 위젯을 개발할 수 있다.
한편, 상술한 본 발명의 방법 발명은 컴퓨터에서 읽을 수 있는 코드/명령들(instructions)/프로그램으로 구현될 수 있다. 예를 들면, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 상기 코드/명령들/프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들어, 롬, 플로피 디스크, 하드디스크, 마그네틱 테이프 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 와 같은 저장 매체를 포함한다.
이러한 본원 발명인 오픈 API 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법은 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
도 1은 본 발명에 따른 오픈 API 제공 프록시 서버를 설명하기 위한 일 실시예의 블록도이다.
도 2는 본 발명에 따른 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법을 설명하기 위한 일 실시예의 플로차트이다.

Claims (16)

  1. 사용자로부터 요청된 위젯 서비스를 분석하는 오픈 API 모듈;
    상기 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청하고, 상기 요청된 웹 콘텐츠를 상기 웹 서버로부터 수신하는 HTTP 통신 모듈; 및
    상기 수신된 웹 콘텐츠를 파싱하여, 상기 위젯 서비스를 위한 데이터를 추출하는 웹 콘텐츠 파싱 모듈를 포함하고,
    상기 오픈 API 모듈이 상기 추출된 데이터를 상기 사용자에게 전송하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  2. 제1항에 있어서, 상기 오픈 API 제공 프록시 서버는
    상기 추출된 데이터를 소정 데이터 포맷으로 가공하는 데이터 가공 모듈을 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  3. 제2항에 있어서, 상기 데이터 가공 모듈은
    상기 추출된 데이터를 XML(eXtensible Markup Language) 및 JSON(JavaScript Object Notation) 중 어느 하나의 데이터 포맷으로 가공하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  4. 제1항에 있어서, 상기 오픈 API 제공 프록시 서버는
    캐싱이 필요한 경우에, 상기 추출된 데이터를 저장하는 로컬 스토리지를 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  5. 제4항에 있어서, 상기 로컬 스토리지는
    데이터 베이스 또는 일반 파일 중 어느 하나에 해당하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  6. 제1항에 있어서, 상기 오픈 API 제공 프록시 서버는
    오픈 API 매뉴얼을 제공하는 매뉴얼 제공모듈을 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  7. 제6항에 있어서, 상기 매뉴얼 제공 모듈은
    오픈 API 목록 및 사용법을 웹 페이지 및 문서 파일 중 어느 하나의 형태로 제공하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  8. 제1항에 있어서, 상기 웹 콘텐츠는,
    웹 페이지 데이터, 웹 서비스 데이터, 및 그림, 음성, 동영상을 포함하는 멀티미디어 데이터를 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버.
  9. 사용자로부터 요청된 위젯 서비스를 분석하는 단계;
    상기 분석된 결과에 대응하는 웹 콘텐츠를 웹 서버로 요청하는 단계;
    상기 웹 서버로부터 수신된 웹 콘텐츠를 파싱하여, 상기 위젯 서비스를 위한 데이터를 추출하는 단계; 및
    상기 추출된 데이터를 상기 사용자에게 전송하는 단계를 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  10. 제9항에 있어서, 상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은
    상기 추출된 데이터를 소정 데이터 포맷으로 가공하는 단계를 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  11. 제10항에 있어서,
    상기 소정 데이터 포맷은 XML(eXtensible Markup Language) 및 JSON(JavaScript Object Notation)를 포함하는 데이터 포맷인 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  12. 제9항에 있어서, 상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은
    캐싱이 필요한 경우에, 상기 추출된 데이터를 로컬 스토리지에 저장하는 단계를 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  13. 제12항에 있어서, 상기 추출된 데이터를 로컬 스토리지에 저장하는 단계는
    상기 로컬 스토리지로서 데이터 베이스 또는 일반 파일 중 어느 하나에 상기 추출된 데이터를 저장하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  14. 제9항에 있어서, 상기 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법은
    오픈 API 매뉴얼을 제공하는 단계를 더 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  15. 제14항에 있어서, 상기 오픈 API 매뉴얼을 제공하는 단계는
    오픈 API 목록 및 사용법을 웹 페이지 및 문서 파일 중 어느 하나의 형태로 제공하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위젯 서비스 제공방법.
  16. 제9항에 있어서, 상기 웹 콘텐츠는,
    웹 페이지 데이터, 웹 서비스 데이터, 및 그림, 음성, 동영상을 포함하는 멀티미디어 데이터를 포함하는 것을 특징으로 하는 오픈 API 제공 프록시 서버를 이용한 위 젯 서비스 제공방법.
KR1020090085487A 2009-09-10 2009-09-10 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법 KR101117762B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090085487A KR101117762B1 (ko) 2009-09-10 2009-09-10 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090085487A KR101117762B1 (ko) 2009-09-10 2009-09-10 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법

Publications (2)

Publication Number Publication Date
KR20110027411A true KR20110027411A (ko) 2011-03-16
KR101117762B1 KR101117762B1 (ko) 2012-03-16

Family

ID=43934230

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090085487A KR101117762B1 (ko) 2009-09-10 2009-09-10 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법

Country Status (1)

Country Link
KR (1) KR101117762B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012169775A2 (ko) * 2011-06-09 2012-12-13 주식회사 피씨엔 오픈 api 기반 콘텐츠 서비스 인터페이스 제공 시스템 및 방법
WO2019164293A1 (ko) * 2018-02-21 2019-08-29 주식회사 팬라인 비계층적 데이터베이스 구조를 활용한 정보 검색 방법 및 장치
KR102230272B1 (ko) * 2020-12-09 2021-03-19 주식회사 이글루시큐리티 프론트엔드와 백엔드 사이의 api 중계방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090001421A (ko) * 2007-04-10 2009-01-09 주식회사 인스프리트 광고 위젯 애플리케이션을 이용한 광고 제공 시스템 및광고 제공 방법
KR100926780B1 (ko) * 2007-12-24 2009-11-16 주식회사 오비고코리아 유무선 위젯 서비스 시스템 및 그 방법
KR20100073794A (ko) * 2008-12-23 2010-07-01 주식회사 케이티 웹 브라우저 기반의 위젯 컨텐츠 제공 장치 및 그 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012169775A2 (ko) * 2011-06-09 2012-12-13 주식회사 피씨엔 오픈 api 기반 콘텐츠 서비스 인터페이스 제공 시스템 및 방법
WO2012169775A3 (ko) * 2011-06-09 2013-04-04 주식회사 피씨엔 오픈 api 기반 콘텐츠 서비스 인터페이스 제공 시스템 및 방법
KR101296321B1 (ko) * 2011-06-09 2013-08-14 주식회사 피씨엔 오픈 api 기반 콘텐츠 서비스 인터페이스 제공 시스템 및 방법
WO2019164293A1 (ko) * 2018-02-21 2019-08-29 주식회사 팬라인 비계층적 데이터베이스 구조를 활용한 정보 검색 방법 및 장치
KR102230272B1 (ko) * 2020-12-09 2021-03-19 주식회사 이글루시큐리티 프론트엔드와 백엔드 사이의 api 중계방법

Also Published As

Publication number Publication date
KR101117762B1 (ko) 2012-03-16

Similar Documents

Publication Publication Date Title
US7870482B2 (en) Web browser extension for simplified utilization of web services
US9916293B2 (en) Module specification for a module to be incorporated into a container document
US10185704B2 (en) Webpage browsing method, webapp framework, method and device for executing javascript and mobile terminal
KR100490734B1 (ko) 주석기반 문서 자동 생성장치 및 방법
CN100462964C (zh) 一种网页数据的更新显示方法
US20070204010A1 (en) Remote Module Syndication System and Method
US9311303B2 (en) Interpreted language translation system and method
EP3030985A1 (en) Automatic augmentation of content through augmentation services
US20100229081A1 (en) Method for Providing a Navigation Element in an Application
EP1963956A2 (en) Remote module incorporation into a container document
US20110145299A1 (en) Offline Gadgets IDE
WO2014126069A1 (ja) 出力機能分割システム
KR100909232B1 (ko) 웹 페이지 인터페이스 제공 방법 및 시스템
US7912924B1 (en) Adding functionality with respect to one or more web pages
CN115495417A (zh) 内容加载方法、装置、设备、介质和程序产品
Han et al. Policy on literature content based on software as service
KR101117762B1 (ko) 오픈 api 제공 프록시 서버 및 이를 이용한 위젯 서비스 제공방법
Rodrigues et al. New trends on ubiquitous mobile multimedia applications
KR100918503B1 (ko) 웹사이트 링크정보를 이용한 웹페이지 정보 전달 방법 및 그 시스템
RU2640635C2 (ru) Способ, система и сервер для передачи персонализированного сообщения на пользовательское электронное устройство
CN102789471A (zh) 混搭服务器和提供混搭服务的方法
US11757956B2 (en) Internet (over the top) worldwide public chat capabilities matched to specified (“URL”) streaming content and non specified (“prenamed and hardcoded”) streaming content rooms
US20090327233A1 (en) Method of selecting objects in web pages
Chang et al. A Web-feed based service for enhancing asynchronous learning on personal computers and mobile devices
Vogel et al. User Acceptance of Modified Web Page Loading Based on Progressive Streaming

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160201

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee