mirror of
https://github.com/gorhill/uBlock.git
synced 2024-10-04 16:47:15 +02:00
Add method= network filter option; Add mentions of $header and ##^responseheader(...) to each section respectively
parent
184596103f
commit
c2c2ccb109
@ -440,6 +440,8 @@ Where connection:
|
|||||||
- is of type `script`.
|
- is of type `script`.
|
||||||
- has a response HTTP header named `via` whose value matches `1.1 google`.
|
- has a response HTTP header named `via` whose value matches `1.1 google`.
|
||||||
|
|
||||||
|
To remove response headers, see: [`Response header filtering`](#response-header-filtering).
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
***
|
***
|
||||||
@ -478,6 +480,40 @@ Instructs uBO filtering engine to perform a case-sensitive match.
|
|||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
|
#### `method`
|
||||||
|
|
||||||
|
New in [1.46.1b0](https://github.com/gorhill/uBlock/commit/b6981877ba8f9011292aee9556c4d4c08c1bfd2d).
|
||||||
|
|
||||||
|
Related issue: [uBlockOrigin/uBlock-issues#2117](https://github.com/uBlockOrigin/uBlock-issues/issues/2117).
|
||||||
|
|
||||||
|
Ability to filter network requests according to their HTTP method.
|
||||||
|
|
||||||
|
This option supports a list of `|`-separated lowercased method names. Negated method names are allowed.
|
||||||
|
|
||||||
|
These are valid methods:
|
||||||
|
|
||||||
|
- `connect`
|
||||||
|
- `delete`
|
||||||
|
- `get`
|
||||||
|
- `head`
|
||||||
|
- `options`
|
||||||
|
- `patch`
|
||||||
|
- `post`
|
||||||
|
- `put`
|
||||||
|
|
||||||
|
As per DNR's own documentation:
|
||||||
|
- https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#type-RequestMethod
|
||||||
|
|
||||||
|
Example:
|
||||||
|
```
|
||||||
|
||google.com^$method=post|get
|
||||||
|
||example.com^$method=~get
|
||||||
|
```
|
||||||
|
|
||||||
|
The logger shows the method used for every network request. It's possible to filter the logger output for most-common methods: `get`, `head`, `post`.
|
||||||
|
|
||||||
|
***
|
||||||
|
|
||||||
#### `ping`
|
#### `ping`
|
||||||
|
|
||||||
Blocks requests send by the [`ping`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-ping) attribute on links and [Navigator.sendBeacon()](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon).
|
Blocks requests send by the [`ping`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-ping) attribute on links and [Navigator.sendBeacon()](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon).
|
||||||
@ -546,7 +582,7 @@ For example:
|
|||||||
|
|
||||||
New in [1.46.1b0](https://github.com/gorhill/uBlock/commit/19f8b30d577ac17097b8060adfc92093866e26d8).
|
New in [1.46.1b0](https://github.com/gorhill/uBlock/commit/19f8b30d577ac17097b8060adfc92093866e26d8).
|
||||||
|
|
||||||
Solves [uBlockOrigin/uBlock-issues#2412](https://github.com/uBlockOrigin/uBlock-issues/discussions/2412).
|
Related issue: [uBlockOrigin/uBlock-issues#2412](https://github.com/uBlockOrigin/uBlock-issues/discussions/2412).
|
||||||
|
|
||||||
The main motivation of this option is to give uBO's static network filtering engine an equivalent of DNR's [`requestDomains`](https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#property-RuleCondition-requestDomains) and [`excludedRequestDomains`](https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#property-RuleCondition-excludedRequestDomains).
|
The main motivation of this option is to give uBO's static network filtering engine an equivalent of DNR's [`requestDomains`](https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#property-RuleCondition-requestDomains) and [`excludedRequestDomains`](https://developer.chrome.com/docs/extensions/reference/declarativeNetRequest/#property-RuleCondition-excludedRequestDomains).
|
||||||
|
|
||||||
@ -603,7 +639,7 @@ CSP option syntax is unusual compared to other filters. Recommend to be used onl
|
|||||||
|
|
||||||
Refer to ["Content Security Policy (CSP) Quick Reference Guide"](https://content-security-policy.com/) or [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) for further syntax help.
|
Refer to ["Content Security Policy (CSP) Quick Reference Guide"](https://content-security-policy.com/) or [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) for further syntax help.
|
||||||
|
|
||||||
See also [`denyallow`](#denyallow).
|
See also [`denyallow`](#denyallow)
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
@ -756,6 +792,8 @@ Since the base domain name gets used to derive the name of the "entity", `google
|
|||||||
|
|
||||||
New in [1.25.0](https://github.com/gorhill/uBlock/commit/3fab7bfdb4f892f3d33159fd53ccf1d5342a090a).
|
New in [1.25.0](https://github.com/gorhill/uBlock/commit/3fab7bfdb4f892f3d33159fd53ccf1d5342a090a).
|
||||||
|
|
||||||
|
Related issue: [uBlockOrigin/uBlock-issues#803](https://github.com/uBlockOrigin/uBlock-issues/issues/803).
|
||||||
|
|
||||||
By preceding a typical generic cosmetic filter with a literal `*`, this can turn it into a specific-generic cosmetic filter that unconditionally gets injected into all web pages.
|
By preceding a typical generic cosmetic filter with a literal `*`, this can turn it into a specific-generic cosmetic filter that unconditionally gets injected into all web pages.
|
||||||
|
|
||||||
```adb
|
```adb
|
||||||
@ -772,8 +810,6 @@ The new specific-generic form will also be disabled when a web page is subject t
|
|||||||
|
|
||||||
Specific-generic cosmetic filters will NOT become discarded when checking the "Ignore generic cosmetic filters" option in the "Filter lists" pane since this option is primarily to disable the DOM surveyor.
|
Specific-generic cosmetic filters will NOT become discarded when checking the "Ignore generic cosmetic filters" option in the "Filter lists" pane since this option is primarily to disable the DOM surveyor.
|
||||||
|
|
||||||
Related issue: [#803](https://github.com/uBlockOrigin/uBlock-issues/issues/803).
|
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
### Cosmetic filters
|
### Cosmetic filters
|
||||||
@ -806,7 +842,7 @@ Since `:remove()` is an "action" operator, it must only be used as a trailing op
|
|||||||
|
|
||||||
AG's cosmetic filter syntax `{ remove: true; }` will be converted to uBO's `:remove()` operator internally.
|
AG's cosmetic filter syntax `{ remove: true; }` will be converted to uBO's `:remove()` operator internally.
|
||||||
|
|
||||||
To remove elements from a document _before_ it is parsed by the browser, see: [`HTML filters`](#html-filters)
|
To remove elements from a document _before_ it is parsed by the browser, see: [`HTML filters`](#html-filters).
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
@ -918,6 +954,8 @@ Given that the header removal occurs at onHeaderReceived time, this new ability
|
|||||||
|
|
||||||
The motivation for this new filtering ability is an instance of a website using a `refresh` header to redirect a visitor to an undesirable destination after a few seconds.
|
The motivation for this new filtering ability is an instance of a website using a `refresh` header to redirect a visitor to an undesirable destination after a few seconds.
|
||||||
|
|
||||||
|
To filter network responses according to whether a **specific** response header is present and whether or not it matches a **distinct value**, see: [`header`](#header).
|
||||||
|
|
||||||
***
|
***
|
||||||
|
|
||||||
### Scriptlet injection
|
### Scriptlet injection
|
||||||
|
Loading…
Reference in New Issue
Block a user