HTTPRequest 類別
代表由網頁發送的 HTTP 請求。
簽名
export declare abstract class HTTPRequest
備註
每當網頁發送請求時(例如請求網路資源),Puppeteer 的 page
會發出以下事件
-
request
:當網頁發出請求時發出。 -
requestfinished
- 當回應主體下載完成且請求完成時發出。
如果請求在某個時間點失敗,則會發出 requestfailed
事件,而不是 requestfinished
事件。
所有這些事件都提供一個 HTTPRequest
的實例,代表發生的請求
page.on('request', request => ...)
注意:HTTP 錯誤回應(例如 404 或 503)從 HTTP 的角度來看仍然是成功的回應,因此請求將以 requestfinished
事件完成。
如果請求收到「重新導向」回應,則請求會以 requestfinished
事件成功完成,並且會向重新導向的 URL 發出新的請求。
此類別的建構函式標記為內部。第三方程式碼不應直接呼叫建構函式或建立擴充 HTTPRequest
類別的子類別。
屬性
屬性 | 修飾詞 | 類型 | 描述 |
---|---|---|---|
client |
| (實驗性) 警告!使用此客戶端可能會破壞 Puppeteer。請謹慎使用。 |
方法
方法 | 修飾詞 | 描述 |
---|---|---|
abort(errorCode, priority) | 中止請求。 備註 若要使用此方法,應使用 Page.setRequestInterception() 啟用請求攔截。如果未啟用,此方法會立即擲回例外狀況。 | |
abortErrorReason() | 中止請求的最新原因 | |
continue(overrides, priority) | 使用可選的請求覆寫繼續請求。 備註 若要使用此方法,應使用 Page.setRequestInterception() 啟用請求攔截。 如果未啟用請求攔截,則會立即擲回例外狀況。 | |
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 是以下其中之一: | |
isInterceptResolutionHandled() | 如果已處理攔截解析則為 | |
如果請求是目前框架導覽的驅動程式,則為 True。 | ||
method() | 使用的方法 ( | |
postData() | 請求的 POST 主體(如果有的話)。 | |
redirectChain() |
備註
例如,如果網站
如果網站
| |
resourceType() | 包含轉譯引擎感知到的請求資源類型。 | |
respond(response, priority) | 使用給定的回應完成請求。 備註 若要使用此方法,應使用 Page.setRequestInterception() 啟用請求攔截。 如果未啟用請求攔截,則會立即擲回例外狀況。 | |
response() | 相符的 | |
responseForRequest() | 如果允許攔截回應(即,未呼叫 | |
url() | 請求的 URL |