<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # class:request ### class: Request v0.9.0 每當頁面發送一個請求,例如網絡請求,以下事件會被 puppeteer 頁面觸發: - ['request'](#?product=Puppeteer&version=v1.11.0&show=api-event-request) 當請求發起后頁面會觸發這個事件。 - ['response'](#?product=Puppeteer&version=v1.11.0&show=api-event-response) 請求收到響應的時候觸發。 - ['requestfinished'](#?product=Puppeteer&version=v1.11.0&show=api-event-requestfinished) 請求完成并且響應體下載完成時觸發 如果某些時候請求失敗,后續不會觸發 'requestfinished' 事件(可能也不會觸發 'response' 事件),而是觸發 ['requestfailed'](#?product=Puppeteer&version=v1.11.0&show=api-event-requestfailed) 事件 如果請求得到一個重定向的響應,請求會成功地觸發 'requestfinished' 事件,并且對重定向的 `url` 發起一個新的請求 #### Methods - [request.abort(\[errorCode\])](#?product=Puppeteer&version=v1.11.0&show=api-requestaborterrorcode)v0.9.0 - [request.continue(\[overrides\])](#?product=Puppeteer&version=v1.11.0&show=api-requestcontinueoverrides)v0.9.0 - [request.failure()](#?product=Puppeteer&version=v1.11.0&show=api-requestfailure)v0.9.0 - [request.frame()](#?product=Puppeteer&version=v1.11.0&show=api-requestframe)v0.9.0 - [request.headers()](#?product=Puppeteer&version=v1.11.0&show=api-requestheaders)v0.9.0 - [request.isNavigationRequest()](#?product=Puppeteer&version=v1.11.0&show=api-requestisnavigationrequest)v0.9.0 - [request.method()](#?product=Puppeteer&version=v1.11.0&show=api-requestmethod)v0.9.0 - [request.postData()](#?product=Puppeteer&version=v1.11.0&show=api-requestpostdata)v0.9.0 - [request.redirectChain()](#?product=Puppeteer&version=v1.11.0&show=api-requestredirectchain)v0.9.0 - [request.resourceType()](#?product=Puppeteer&version=v1.11.0&show=api-requestresourcetype)v0.9.0 - [request.respond(response)](#?product=Puppeteer&version=v1.11.0&show=api-requestrespondresponse)v0.9.0 - [request.response()](#?product=Puppeteer&version=v1.11.0&show=api-requestresponse)v0.9.0 - [request.url()](#?product=Puppeteer&version=v1.11.0&show=api-requesturl)v0.9.0 ### Methods #### request.abort(\[errorCode\])v0.9.0 - `errorCode` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 可選的錯誤碼。默認為`failed`,可以是以下值: - `aborted` - 操作被取消 (因為用戶的行為) - `accessdenied` - 訪問資源權限不足(非網絡原因) - `addressunreachable` - 找不到IP地址 這通常意味著沒有路由通向指定主機或者網絡 - `blockedbyclient` - 客戶端選擇阻止請求 - `blockedbyresponse` - 請求失敗,因為響應是與未滿足的要求一起傳遞出去的(例如,'X-Frame-Options' 和'Content-Security-Policy' 祖先檢查) - `connectionaborted` - 未收到數據發送的ACK信號導致的連接超時 - `connectionclosed` - 連接關閉(對應 TCP FIN 包) - `connectionfailed` - 嘗試連接失敗。 - `connectionrefused` - 嘗試連接拒絕。 - `connectionreset` - 連接被重置 (對應 TCP RST 包)。 - `internetdisconnected` - 網絡連接丟失。 - `namenotresolved` - 主機名字無法被解析。 - `timedout` - 操作超時。 - `failed` - 發生通用錯誤。 - returns: <[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise "Promise")> 想要中斷請求,應該使用 `page.setRequestInterception` 來開啟請求攔截,如果請求攔截沒有開啟會立即拋出異常。 #### request.continue(\[overrides\])v0.9.0 - `overrides` <[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 可選的請求覆寫選項,可以是以下值中的一個: - `url` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 如果設置的話,請求 url 將會改變 - `method` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 如果設置的話,會改變請求方法 (例如,`GET` 或者 `POST`) - `postData` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 如果設置的話,會改變請求要提交的數據 - `headers` <[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 如果設置的話,改變 http 請求頭 - returns: <[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise "Promise")> 想要用可選的請求覆寫選項繼續請求,應該使用 `page.setRequestInterception` 來開啟請求攔截,如果請求攔截沒有開啟會立即拋出異常 #### request.failure()v0.9.0 - returns: <?[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 描述請求失敗的對象,如果有的話 - `errorText` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 人類可讀的錯誤信息,例如,`'net::ERR_FAILED'`。 `requestfailed` 事件觸發后,在沒有請求失敗的情況下,這個方法會返回 `null`。 輸出所有失敗請求示例: ``` page.on('requestfailed', request => { console.log(request.url() + ' ' + request.failure().errorText);}); ``` #### request.frame()v0.9.0 - returns: <?[Frame](#?product=Puppeteer&version=v1.11.0&show=api-class-frame "Frame")> 發起請求的 [Frame](#?product=Puppeteer&version=v1.11.0&show=api-class-frame "Frame"),如果導航到錯誤頁面,則為`null`。 #### request.headers()v0.9.0 - returns: <[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 該請求的 http 頭對象。所有頭都采用小寫的命名方式 #### request.isNavigationRequest()v0.9.0 - returns: <[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type "Boolean")> 這個請求是否正在驅動框架在導航。 #### request.method()v0.9.0 - returns: <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 請求方法 ( GET,POST,等。) #### request.postData()v0.9.0 - returns: <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 請求提交的數據。 #### request.redirectChain()v0.9.0 - returns: <[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array "Array")<[Request](#?product=Puppeteer&version=v1.11.0&show=api-class-request "Request")>> `redirectChain` 是一條獲取資源的請求鏈 - 如果沒有被重定向而且請求成功的話, 鏈路將會被置空 - 如果服務器至少響應了一次重定向, 那么這條鏈路將會包含所有重定向請求 `redirectChain` 會共享相同鏈路上的所有請求。 舉個例子,如果網站 `http://example.com` 重定向一次到 `https://example.com`,那么這條鏈就會包含一個請求: ``` const response = await page.goto('http://example.com');const chain = response.request().redirectChain();console.log(chain.length); // 1console.log(chain[0].url()); // 'http://example.com' ``` 如果網站 `https://google.com` 沒有重定向,那么鏈(數組)就會被置空: ``` const response = await page.goto('https://google.com');const chain = response.request().redirectChain();console.log(chain.length); // 0 ``` #### request.resourceType()v0.9.0 - returns: <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 包含渲染引擎識別出的請求資源類型 資源類型為以下值中的一個:`document`,`stylesheet`,`image`,`media`,`font`,`script`,`texttrack`,`xhr`,`fetch`,`eventsource`,`websocket`,`manifest`,`other`。 #### request.respond(response)v0.9.0 - `response` <[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 完成請求的響應對象 - `status` <[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Number_type "Number")> 響應狀態碼,默認為 `200`。 - `headers` <[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object")> 可選的響應頭 - `contentType` <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 設置的話,等同于 `Content-Type` 響應頭 - `body` <[Buffer](https://nodejs.org/api/buffer.html#buffer_class_buffer "Buffer")|[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 可選的響應體 - returns: <[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise "Promise")> 完成請求后會返回一個響應。可以通過開啟 `page.setRequestInterception` 選項來使用請求攔截,如果請求攔截沒有開啟則會拋出異常。 下面例子中,所有執行完成的請求都會返回 404 響應體 ``` await page.setRequestInterception(true);page.on('request', request => { request.respond({ status: 404, contentType: 'text/plain', body: 'Not Found!' });}); ``` > **注意**`request.respond` 不支持模擬響應 `dataURL` 請求。 對 `dataURL`請求使用 `request.respond` 并不會起任何作用。 #### request.response()v0.9.0 - returns: <?[Response](#?product=Puppeteer&version=v1.11.0&show=api-class-response "Response")> 相應的 Response 對象,如果沒有收到響應則是`null`。 #### request.url()v0.9.0 - returns: <[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "String")> 請求的 URL。 ![](images/pptr.png) puppeteer.js中文網|class:request puppeteer.js中文文檔, puppeteer chrome, puppeteer firefox, puppeteer api 中文文檔 puppeteer.js中文網包含了Puppeteer中文文檔,最新資訊,應用案例等。Puppeteer 是一個 Node 庫,它提供了一個高級 API 來通過 DevTools 協議控制 Chromium 或 Chrome。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看