2022-07-05 13:41:43 +00:00
---
sidebar_label: Page.waitForResponse
---
# Page.waitForResponse() method
2022-10-24 07:07:05 +00:00
#### Signature:
2022-07-05 13:41:43 +00:00
```typescript
class Page {
2023-09-21 09:09:27 +00:00
abstract waitForResponse(
2022-07-05 13:41:43 +00:00
urlOrPredicate:
| string
| ((res: HTTPResponse) => boolean | Promise< boolean > ),
options?: {
timeout?: number;
}
): Promise< HTTPResponse > ;
}
```
## Parameters
2023-02-23 12:31:23 +00:00
| Parameter | Type | Description |
| -------------- | ------------------------------------------------------------------------------------------------------ | ---------------------------------------- |
| urlOrPredicate | string \| ((res: [HTTPResponse ](./puppeteer.httpresponse.md )) => boolean \| Promise< boolean> ) | A URL or predicate to wait for. |
2023-11-29 12:06:05 +00:00
| options | { timeout?: number; } | _(Optional)_ Optional waiting parameters |
2022-07-05 13:41:43 +00:00
**Returns:**
Promise< [HTTPResponse](./puppeteer.httpresponse.md)>
Promise which resolves to the matched response.
## Remarks
Optional Parameter 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
const firstResponse = await page.waitForResponse(
'https://example.com/resource'
);
const finalResponse = await page.waitForResponse(
response =>
response.url() === 'https://example.com' & & response.status() === 200
);
const finalResponse = await page.waitForResponse(async response => {
return (await response.text()).includes('< html > ');
});
return finalResponse.ok();
```