puppeteer/docs/api/puppeteer.page.waitforresponse.md
Miki Lombardi 39e3d4bceb docs: Upgrading to Docusaurus V3 (#11434)
Co-authored-by: Alex Rudenko <alexrudenko@chromium.org>
2023-11-29 13:08:08 +01:00

56 lines
1.8 KiB
Markdown

---
sidebar_label: Page.waitForResponse
---
# Page.waitForResponse() method
#### Signature:
```typescript
class Page {
abstract waitForResponse(
urlOrPredicate:
| string
| ((res: HTTPResponse) => boolean | Promise<boolean>),
options?: {
timeout?: number;
}
): Promise<HTTPResponse>;
}
```
## Parameters
| Parameter | Type | Description |
| -------------- | ------------------------------------------------------------------------------------------------------ | ---------------------------------------- |
| urlOrPredicate | string \| ((res: [HTTPResponse](./puppeteer.httpresponse.md)) =&gt; boolean \| Promise&lt;boolean&gt;) | A URL or predicate to wait for. |
| options | &#123; timeout?: number; &#125; | _(Optional)_ Optional waiting parameters |
**Returns:**
Promise&lt;[HTTPResponse](./puppeteer.httpresponse.md)&gt;
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();
```