Web API

chrome.* API를 사용하는 경우 확장 프로그램은 브라우저가 웹페이지 및 앱에 제공하는 모든 API를 사용할 수 있습니다. 브라우저에서 사용하려는 API를 지원하지 않는 경우 추가 API 라이브러리를 확장 프로그램에 번들로 묶을 수 있습니다.

다음은 확장 프로그램에서 사용할 수 있는 API 샘플입니다.

표준 JavaScript API
이 API는 일반 웹 앱에서 사용할 수 있는 동일한 핵심 JavaScript 및 DOM (문서 객체 모델) API입니다.
XMLHttpRequest
XMLHttpRequest를 사용하여 하나 이상의 서버에서 데이터를 요청합니다. 매니페스트의 permissions 필드는 확장 프로그램이 요청을 보낼 수 있는 호스트를 지정합니다.
HTML 및 기타 새로운 API

Chrome은 다른 새로운 API와 함께 최신 HTML 기능을 지원합니다. 사용할 수 있는 API는 다음과 같습니다.

  • 오디오 (튜토리얼)
  • 애플리케이션 캐시 (가이드)
  • 캔버스 (도움말)
  • 전체 화면 (도움말)
  • Chrome 앱에서는 사용자에게 메시지를 표시하거나 종료 지침을 제공하지 않고 전체 화면이 시작됩니다. HTML5 전체 화면을 사용하려면 매니페스트에 app.window.fullscreen 권한이 있어야 합니다. 일반 웹페이지에서 브라우저는 ESC 키를 가로채서 포인터 잠금을 종료하여 사용자에게 일관된 이스케이프 메서드를 제공합니다. 또한 app.window.fullscreen.overrideEsc 권한을 사용하여 앱이 키 다운 및 키업 이벤트 시 preventDefault를 호출할 수 있도록 하지 않는 한 Chrome 앱에서도 마찬가지입니다.
  • 위치정보 (튜토리얼)
  • 로컬 스토리지 (튜토리얼)
  • 알림 (튜토리얼)
  • 포인터 잠금 (튜토리얼)
  • Chrome 앱에서는 사용자 동작이 필요하거나 사용자에게 메시지를 표시하거나 종료 안내를 제공하지 않고도 포인터 잠금이 입력됩니다. 포인터 잠금을 사용하려면 매니페스트에 pointerlock 권한이 필요합니다. 또한 기본 이탈 동작이 없습니다. 일반 웹페이지에서 브라우저는 ESC 키를 가로채서 포인터 잠금을 종료합니다. Chrome 앱에는 이 기능이 없습니다.
  • 동영상 (튜토리얼)
  • 웹 데이터베이스 (튜토리얼)

html5rocks.com에서 HTML5 정보, 튜토리얼, 대화형 플레이그라운드 및 기타 리소스 링크를 확인하세요.

Web API

확장 프로그램에서 웹 API를 사용할 수 있습니다. 필터, 애니메이션, 변환 같은 CSS 기능은 특히 유용합니다. 다음은 WebKit 스타일을 사용하여 UI를 회전하는 예입니다.

<style>
  div:hover {
    transform: rotate(360deg);
    transition: all 1s ease-out;
  }
</style>
V8 API(예: JSON)

JSON은 V8에 있으므로 JSON 함수를 사용하기 위해 JSON 라이브러리를 포함할 필요가 없습니다.

번들 라이브러리의 API

브라우저에서 제공하지 않는 라이브러리 (예: jQuery)를 사용하려면 해당 라이브러리의 자바스크립트 파일을 확장 프로그램과 함께 번들로 묶으면 됩니다. 번들 라이브러리는 다른 웹페이지와 마찬가지로 확장 프로그램에서 작동합니다.