2022-07-05 13:41:43 +00:00
---
sidebar_label: Page.waitForRequest
---
# Page.waitForRequest() method
2022-10-24 07:07:05 +00:00
#### Signature:
2022-07-05 13:41:43 +00:00
```typescript
class Page {
2024-01-25 13:52:11 +00:00
waitForRequest(
urlOrPredicate: string | AwaitablePredicate< HTTPRequest > ,
options?: WaitTimeoutOptions
2022-07-05 13:41:43 +00:00
): Promise< HTTPRequest > ;
}
```
## Parameters
2024-03-20 15:03:14 +00:00
< table > < thead > < tr > < th >
2022-07-05 13:41:43 +00:00
2024-03-20 15:03:14 +00:00
Parameter
< / th > < th >
Type
< / th > < th >
Description
< / th > < / tr > < / thead >
< tbody > < tr > < td >
urlOrPredicate
< / td > < td >
string \| [AwaitablePredicate ](./puppeteer.awaitablepredicate.md )< [HTTPRequest](./puppeteer.httprequest.md)>
< / td > < td >
A URL or predicate to wait for
< / td > < / tr >
< tr > < td >
options
< / td > < td >
[WaitTimeoutOptions ](./puppeteer.waittimeoutoptions.md )
< / td > < td >
_(Optional)_ Optional waiting parameters
< / td > < / tr >
< / tbody > < / table >
2022-07-05 13:41:43 +00:00
**Returns:**
Promise< [HTTPRequest](./puppeteer.httprequest.md)>
2022-10-04 22:05:32 +00:00
Promise which resolves to the matched request
2022-07-05 13:41:43 +00:00
## Remarks
Optional Waiting Parameters have:
- `timeout` : Maximum wait time in milliseconds, defaults to `30` seconds, pass `0` to disable the timeout. The default value can be changed by using the [Page.setDefaultTimeout() ](./puppeteer.page.setdefaulttimeout.md ) method.
## Example
```ts
2022-10-04 22:05:32 +00:00
const firstRequest = await page.waitForRequest('https://example.com/resource');
const finalRequest = await page.waitForRequest(
request => request.url() === 'https://example.com'
2022-07-05 13:41:43 +00:00
);
2022-10-04 22:05:32 +00:00
return finalRequest.response()?.ok();
2022-07-05 13:41:43 +00:00
```