Web Browser Tunneling Protocol
ウェブサービス上で動くJavaScriptが、そのサービスのContent Security PolicyやWeb Fetch APIの制約を回避して外部HTTPサーバーと通信するための通信プロトコルのこと
一般的な用語ではなく、js-fetch-proxy開発プロジェクトで独自に定義されるプロトコル
ウェブサービスレイヤー及びアプリケーションレイヤー上に構築される
任意のバイナリデータの送受信を定義する
非対称な通信であることが一つの特徴
一方は制約の少ない(Webサーバー・ブラウザレイヤーで動く)HTTPサーバーであり、もう一方はクライアントサイドスクリプトレイヤーで動くスクリプト
エンドポイントに接続可能な方式を適宜選択し、それに応じたカプセル化を行う
サービスのContent Security Policyが厳格な場合、通信できない場合もある
この場合の実行コードは、ウェブサービスのユーザーが、ブックマークレットやサービスのカスタマイズ機能などによってJavaScriptを実行することを想定している
具体的な接続方法を提供する下位プロトコル群を含む
Web Browser Tunneling Image Element Protocol
WBTP 仕様