HTTPRequest クラス
ページによって送信された HTTP リクエストを表します。
シグネチャ:
export declare abstract class HTTPRequest
備考
ページがネットワークリソースなどのリクエストを送信するたびに、Puppeteer の `page` によって以下のイベントが発行されます。
- `request`:ページによってリクエストが発行されたときに発行されます。 - `requestfinished` - レスポンスボディがダウンロードされ、リクエストが完了したときに発行されます。
リクエストが途中で失敗した場合、`requestfinished` イベントの代わりに `requestfailed` イベントが発行されます。
これらのイベントはすべて、発生したリクエストを表す `HTTPRequest` のインスタンスを提供します。
page.on('request', request => ...)
注:404 や 503 などの HTTP エラーレスポンスは、HTTP の観点からは依然として成功したレスポンスであるため、リクエストは `requestfinished` イベントで完了します。
リクエストが「リダイレクト」レスポンスを受信した場合、リクエストは `requestfinished` イベントで正常に完了し、リダイレクトされた URL に新しいリクエストが発行されます。
このクラスのコンストラクタは内部用としてマークされています。サードパーティのコードは、コンストラクタを直接呼び出したり、`HTTPRequest` クラスを拡張するサブクラスを作成したりしてはなりません。
プロパティ
プロパティ | 修飾子 | 型 | 説明 |
---|---|---|---|
client | readonly | CDPSession | 警告! このクライアントを使用すると、Puppeteer が破損する可能性があります。注意して使用してください。 |
メソッド
メソッド | 修飾子 | 説明 |
---|---|---|
abort(errorCode, priority) | リクエストを中止します。 | |
abortErrorReason() | リクエストを中止した最新の理由 | |
continue(overrides, priority) | オプションのリクエストオーバーライドを使用してリクエストを続行します。 | |
continueRequestOverrides() | インターセプトが続行されることを許可されている場合(つまり、`abort()` と `respond()` が呼び出されていない場合)に使用される `ContinueRequestOverrides` です。 | |
enqueueInterceptAction(pendingHandler) | 処理キューに非同期リクエストハンドラを追加します。遅延ハンドラは、特定の順序で実行されることは保証されていませんが、リクエストインターセプトが完了する前に解決されることは保証されています。 | |
failure() | リクエストの失敗に関する情報にアクセスします。 | |
fetchPostData() | ブラウザからリクエストの POST データを取得します。 | |
finalizeInterceptions() | 保留中のインターセプトハンドラを待機し、リクエストインターセプトを実行する方法を決定します。 | |
frame() | リクエストを開始したフレーム。エラーページに移動する場合は null です。 | |
hasPostData() | リクエストに POST データがある場合は true です。データが長すぎるか、デコードされた形式で容易に利用できない場合、このフラグが true の場合でも HTTPRequest.postData() は未定義になる可能性があることに注意してください。その場合は、HTTPRequest.fetchPostData() を使用してください。 | |
headers() | リクエストに関連付けられた HTTP ヘッダーを持つオブジェクト。すべてのヘッダー名は小文字です。 | |
initiator() | リクエストの開始者。 | |
interceptResolutionState() | 現在の解決アクションと優先度を記述する InterceptResolutionState オブジェクト。 InterceptResolutionState には以下が含まれます。action: InterceptResolutionAction priority?: number InterceptResolutionAction は、`abort`、`respond`、`continue`、`disabled`、`none`、または `already-handled` のいずれかです。 | |
isInterceptResolutionHandled() | インターセプト解決が既に処理されている場合は `true`、そうでない場合は `false` です。 | |
isNavigationRequest() | リクエストが現在のフレームのナビゲーションのドライバーである場合は true です。 | |
method() | 使用されたメソッド(`GET`、`POST` など) | |
postData() | リクエストのポストボディ(存在する場合)。 | |
redirectChain() | `redirectChain` は、リソースを取得するために開始されたリクエストのチェーンです。 | |
resourceType() | レンダリングエンジンによって認識されたリクエストのリソースタイプが含まれています。 | |
respond(response, priority) | 指定されたレスポンスでリクエストを実行します。 | |
response() | 一致する `HTTPResponse` オブジェクト。レスポンスがまだ受信されていない場合は null です。 | |
responseForRequest() | インターセプトが応答することを許可されている場合(つまり、`abort()` が呼び出されていない場合)に使用される `ResponseForRequest` です。 | |
url() | リクエストの URL |