mirror of
https://github.com/microsoft/playwright.git
synced 2025-06-26 21:40:17 +00:00
docs: no floating promises in route handlers (#28745)
Fixes https://github.com/microsoft/playwright/issues/28737
This commit is contained in:
parent
8161a7401f
commit
db703a98ea
@ -44,14 +44,14 @@ Continues route's request with optional overrides.
|
|||||||
**Usage**
|
**Usage**
|
||||||
|
|
||||||
```js
|
```js
|
||||||
await page.route('**/*', (route, request) => {
|
await page.route('**/*', async (route, request) => {
|
||||||
// Override headers
|
// Override headers
|
||||||
const headers = {
|
const headers = {
|
||||||
...request.headers(),
|
...request.headers(),
|
||||||
foo: 'foo-value', // set "foo" header
|
foo: 'foo-value', // set "foo" header
|
||||||
bar: undefined, // remove "bar" header
|
bar: undefined, // remove "bar" header
|
||||||
};
|
};
|
||||||
route.continue({ headers });
|
await route.continue({ headers });
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -154,17 +154,17 @@ in the end will be aborted by the first registered route.
|
|||||||
**Usage**
|
**Usage**
|
||||||
|
|
||||||
```js
|
```js
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
// Runs last.
|
// Runs last.
|
||||||
route.abort();
|
await route.abort();
|
||||||
});
|
});
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
// Runs second.
|
// Runs second.
|
||||||
route.fallback();
|
await route.fallback();
|
||||||
});
|
});
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
// Runs first.
|
// Runs first.
|
||||||
route.fallback();
|
await route.fallback();
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -220,9 +220,9 @@ GET requests vs POST requests as in the example below.
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
// Handle GET requests.
|
// Handle GET requests.
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
if (route.request().method() !== 'GET') {
|
if (route.request().method() !== 'GET') {
|
||||||
route.fallback();
|
await route.fallback();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Handling GET only.
|
// Handling GET only.
|
||||||
@ -230,9 +230,9 @@ await page.route('**/*', route => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Handle POST requests.
|
// Handle POST requests.
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
if (route.request().method() !== 'POST') {
|
if (route.request().method() !== 'POST') {
|
||||||
route.fallback();
|
await route.fallback();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Handling POST only.
|
// Handling POST only.
|
||||||
@ -330,14 +330,14 @@ One can also modify request while falling back to the subsequent handler, that w
|
|||||||
route handler can modify url, method, headers and postData of the request.
|
route handler can modify url, method, headers and postData of the request.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
await page.route('**/*', (route, request) => {
|
await page.route('**/*', async (route, request) => {
|
||||||
// Override headers
|
// Override headers
|
||||||
const headers = {
|
const headers = {
|
||||||
...request.headers(),
|
...request.headers(),
|
||||||
foo: 'foo-value', // set "foo" header
|
foo: 'foo-value', // set "foo" header
|
||||||
bar: undefined, // remove "bar" header
|
bar: undefined, // remove "bar" header
|
||||||
};
|
};
|
||||||
route.fallback({ headers });
|
await route.fallback({ headers });
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -554,8 +554,8 @@ Fulfills route's request with given response.
|
|||||||
An example of fulfilling all requests with 404 responses:
|
An example of fulfilling all requests with 404 responses:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
await page.route('**/*', route => {
|
await page.route('**/*', async route => {
|
||||||
route.fulfill({
|
await route.fulfill({
|
||||||
status: 404,
|
status: 404,
|
||||||
contentType: 'text/plain',
|
contentType: 'text/plain',
|
||||||
body: 'Not Found!'
|
body: 'Not Found!'
|
||||||
|
32
packages/playwright-core/types/types.d.ts
vendored
32
packages/playwright-core/types/types.d.ts
vendored
@ -18824,14 +18824,14 @@ export interface Route {
|
|||||||
* **Usage**
|
* **Usage**
|
||||||
*
|
*
|
||||||
* ```js
|
* ```js
|
||||||
* await page.route('**\/*', (route, request) => {
|
* await page.route('**\/*', async (route, request) => {
|
||||||
* // Override headers
|
* // Override headers
|
||||||
* const headers = {
|
* const headers = {
|
||||||
* ...request.headers(),
|
* ...request.headers(),
|
||||||
* foo: 'foo-value', // set "foo" header
|
* foo: 'foo-value', // set "foo" header
|
||||||
* bar: undefined, // remove "bar" header
|
* bar: undefined, // remove "bar" header
|
||||||
* };
|
* };
|
||||||
* route.continue({ headers });
|
* await route.continue({ headers });
|
||||||
* });
|
* });
|
||||||
* ```
|
* ```
|
||||||
*
|
*
|
||||||
@ -18875,17 +18875,17 @@ export interface Route {
|
|||||||
* **Usage**
|
* **Usage**
|
||||||
*
|
*
|
||||||
* ```js
|
* ```js
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* // Runs last.
|
* // Runs last.
|
||||||
* route.abort();
|
* await route.abort();
|
||||||
* });
|
* });
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* // Runs second.
|
* // Runs second.
|
||||||
* route.fallback();
|
* await route.fallback();
|
||||||
* });
|
* });
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* // Runs first.
|
* // Runs first.
|
||||||
* route.fallback();
|
* await route.fallback();
|
||||||
* });
|
* });
|
||||||
* ```
|
* ```
|
||||||
*
|
*
|
||||||
@ -18894,9 +18894,9 @@ export interface Route {
|
|||||||
*
|
*
|
||||||
* ```js
|
* ```js
|
||||||
* // Handle GET requests.
|
* // Handle GET requests.
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* if (route.request().method() !== 'GET') {
|
* if (route.request().method() !== 'GET') {
|
||||||
* route.fallback();
|
* await route.fallback();
|
||||||
* return;
|
* return;
|
||||||
* }
|
* }
|
||||||
* // Handling GET only.
|
* // Handling GET only.
|
||||||
@ -18904,9 +18904,9 @@ export interface Route {
|
|||||||
* });
|
* });
|
||||||
*
|
*
|
||||||
* // Handle POST requests.
|
* // Handle POST requests.
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* if (route.request().method() !== 'POST') {
|
* if (route.request().method() !== 'POST') {
|
||||||
* route.fallback();
|
* await route.fallback();
|
||||||
* return;
|
* return;
|
||||||
* }
|
* }
|
||||||
* // Handling POST only.
|
* // Handling POST only.
|
||||||
@ -18918,14 +18918,14 @@ export interface Route {
|
|||||||
* modify url, method, headers and postData of the request.
|
* modify url, method, headers and postData of the request.
|
||||||
*
|
*
|
||||||
* ```js
|
* ```js
|
||||||
* await page.route('**\/*', (route, request) => {
|
* await page.route('**\/*', async (route, request) => {
|
||||||
* // Override headers
|
* // Override headers
|
||||||
* const headers = {
|
* const headers = {
|
||||||
* ...request.headers(),
|
* ...request.headers(),
|
||||||
* foo: 'foo-value', // set "foo" header
|
* foo: 'foo-value', // set "foo" header
|
||||||
* bar: undefined, // remove "bar" header
|
* bar: undefined, // remove "bar" header
|
||||||
* };
|
* };
|
||||||
* route.fallback({ headers });
|
* await route.fallback({ headers });
|
||||||
* });
|
* });
|
||||||
* ```
|
* ```
|
||||||
*
|
*
|
||||||
@ -19019,8 +19019,8 @@ export interface Route {
|
|||||||
* An example of fulfilling all requests with 404 responses:
|
* An example of fulfilling all requests with 404 responses:
|
||||||
*
|
*
|
||||||
* ```js
|
* ```js
|
||||||
* await page.route('**\/*', route => {
|
* await page.route('**\/*', async route => {
|
||||||
* route.fulfill({
|
* await route.fulfill({
|
||||||
* status: 404,
|
* status: 404,
|
||||||
* contentType: 'text/plain',
|
* contentType: 'text/plain',
|
||||||
* body: 'Not Found!'
|
* body: 'Not Found!'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user