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**
|
||||
|
||||
```js
|
||||
await page.route('**/*', (route, request) => {
|
||||
await page.route('**/*', async (route, request) => {
|
||||
// Override headers
|
||||
const headers = {
|
||||
...request.headers(),
|
||||
foo: 'foo-value', // set "foo" 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**
|
||||
|
||||
```js
|
||||
await page.route('**/*', route => {
|
||||
await page.route('**/*', async route => {
|
||||
// Runs last.
|
||||
route.abort();
|
||||
await route.abort();
|
||||
});
|
||||
await page.route('**/*', route => {
|
||||
await page.route('**/*', async route => {
|
||||
// Runs second.
|
||||
route.fallback();
|
||||
await route.fallback();
|
||||
});
|
||||
await page.route('**/*', route => {
|
||||
await page.route('**/*', async route => {
|
||||
// Runs first.
|
||||
route.fallback();
|
||||
await route.fallback();
|
||||
});
|
||||
```
|
||||
|
||||
@ -220,9 +220,9 @@ GET requests vs POST requests as in the example below.
|
||||
|
||||
```js
|
||||
// Handle GET requests.
|
||||
await page.route('**/*', route => {
|
||||
await page.route('**/*', async route => {
|
||||
if (route.request().method() !== 'GET') {
|
||||
route.fallback();
|
||||
await route.fallback();
|
||||
return;
|
||||
}
|
||||
// Handling GET only.
|
||||
@ -230,9 +230,9 @@ await page.route('**/*', route => {
|
||||
});
|
||||
|
||||
// Handle POST requests.
|
||||
await page.route('**/*', route => {
|
||||
await page.route('**/*', async route => {
|
||||
if (route.request().method() !== 'POST') {
|
||||
route.fallback();
|
||||
await route.fallback();
|
||||
return;
|
||||
}
|
||||
// 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.
|
||||
|
||||
```js
|
||||
await page.route('**/*', (route, request) => {
|
||||
await page.route('**/*', async (route, request) => {
|
||||
// Override headers
|
||||
const headers = {
|
||||
...request.headers(),
|
||||
foo: 'foo-value', // set "foo" 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:
|
||||
|
||||
```js
|
||||
await page.route('**/*', route => {
|
||||
route.fulfill({
|
||||
await page.route('**/*', async route => {
|
||||
await route.fulfill({
|
||||
status: 404,
|
||||
contentType: 'text/plain',
|
||||
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**
|
||||
*
|
||||
* ```js
|
||||
* await page.route('**\/*', (route, request) => {
|
||||
* await page.route('**\/*', async (route, request) => {
|
||||
* // Override headers
|
||||
* const headers = {
|
||||
* ...request.headers(),
|
||||
* foo: 'foo-value', // set "foo" header
|
||||
* bar: undefined, // remove "bar" header
|
||||
* };
|
||||
* route.continue({ headers });
|
||||
* await route.continue({ headers });
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
@ -18875,17 +18875,17 @@ export interface Route {
|
||||
* **Usage**
|
||||
*
|
||||
* ```js
|
||||
* await page.route('**\/*', route => {
|
||||
* await page.route('**\/*', async route => {
|
||||
* // Runs last.
|
||||
* route.abort();
|
||||
* await route.abort();
|
||||
* });
|
||||
* await page.route('**\/*', route => {
|
||||
* await page.route('**\/*', async route => {
|
||||
* // Runs second.
|
||||
* route.fallback();
|
||||
* await route.fallback();
|
||||
* });
|
||||
* await page.route('**\/*', route => {
|
||||
* await page.route('**\/*', async route => {
|
||||
* // Runs first.
|
||||
* route.fallback();
|
||||
* await route.fallback();
|
||||
* });
|
||||
* ```
|
||||
*
|
||||
@ -18894,9 +18894,9 @@ export interface Route {
|
||||
*
|
||||
* ```js
|
||||
* // Handle GET requests.
|
||||
* await page.route('**\/*', route => {
|
||||
* await page.route('**\/*', async route => {
|
||||
* if (route.request().method() !== 'GET') {
|
||||
* route.fallback();
|
||||
* await route.fallback();
|
||||
* return;
|
||||
* }
|
||||
* // Handling GET only.
|
||||
@ -18904,9 +18904,9 @@ export interface Route {
|
||||
* });
|
||||
*
|
||||
* // Handle POST requests.
|
||||
* await page.route('**\/*', route => {
|
||||
* await page.route('**\/*', async route => {
|
||||
* if (route.request().method() !== 'POST') {
|
||||
* route.fallback();
|
||||
* await route.fallback();
|
||||
* return;
|
||||
* }
|
||||
* // Handling POST only.
|
||||
@ -18918,14 +18918,14 @@ export interface Route {
|
||||
* modify url, method, headers and postData of the request.
|
||||
*
|
||||
* ```js
|
||||
* await page.route('**\/*', (route, request) => {
|
||||
* await page.route('**\/*', async (route, request) => {
|
||||
* // Override headers
|
||||
* const headers = {
|
||||
* ...request.headers(),
|
||||
* foo: 'foo-value', // set "foo" 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:
|
||||
*
|
||||
* ```js
|
||||
* await page.route('**\/*', route => {
|
||||
* route.fulfill({
|
||||
* await page.route('**\/*', async route => {
|
||||
* await route.fulfill({
|
||||
* status: 404,
|
||||
* contentType: 'text/plain',
|
||||
* body: 'Not Found!'
|
||||
|
Loading…
x
Reference in New Issue
Block a user