| {{{#!wiki style="margin:-10px" | <tablebordercolor=#808080><tablebgcolor=#808080> | 월드 와이드 웹 관련 문서 | }}} |
| {{{#!wiki style="word-break: keep-all; margin: 0 -10px -5px;" {{{#!folding [ 펼치기 · 접기 ] {{{#!wiki style="letter-spacing: -1px; margin:-6px -1px -11px; word-break: keep-all" | <colbgcolor=#808080><colcolor=#fff> HTTP | 버전(HTTP/1.1 · HTTP/2 · HTTP/3) · HTTPS · 응답 코드 · 헤더 · HSTS | |
| 표현 레이어 | HTML · URL(쿼리 문자열) · wai-aria | ||
| 클라이언트 | HTTP 클라이언트 · 웹 브라우저(브라우저 전쟁 · 렌더링 엔진 · WebDriver · 브라우저 개발자 도구) | ||
| 표준화 | 웹 표준 · W3C · WHATWG | ||
| 기술 | 웹소켓 · WebGL · 웹 컴포넌트 · 프로그레시브 웹 앱 · WebAssembly · CORS · WebRTC | ||
| 기타 | 오픈 그래프 프로토콜 · MDN |
1. 개요
웹 브라우저를 headless하게 접근 및 사용하기 위한 통용 표준 프로토콜.W3C의 WebDriver 스펙에서 정의되고 있다.
2. 특징
웹 표준인 만큼 HTTP 기반으로 정의되어 있다. 여기서 대부분의 endpoint를 확인할 수 있으며, 이 기반으로 driver wrapper나 proxy를 구현하기도 편하다.2.1. 단점
웹 표준이 늘 그렇듯(...) Chrome DevTools Protocol 등 각 브라우저에 특화된 프로토콜에 비하면 디테일은 다소 떨어지는 편이다. Selenium이 아무리 해도 Puppeteer만큼 복잡하고 정교한 API를 제공하지 못하는 근본적인 이유. 다만 역으로 생각하면 그만큼 호환성이 높다는 것이기도 하다. 때문에 cross testing을 할 때는 주로 WebDriver 프로토콜을 사용하는 편.3. 관련 문서
- Selenium
- Puppeteer - Chrome DevTools Protocol뿐 아니라 WebDriver BIDI 프로토콜도 지원한다.