An object of this type is returned by event listeners that have set "blocking"
in their extraInfoSpec
argument.
By setting particular properties in BlockingResponse
, the listener can modify network requests.
Note that you can't set all this object's properties in every listener: the properties you can set are dependent on the event that triggered this listener, as detailed below.
Values of this type are objects. They contain the following properties:
authCredentials
Optional
object
. If set, the request is made using the given credentials. You can only set this property in onAuthRequired
. The authCredentials
property is an object with the following properties:username
string
. Username to supply.password
string
. Password to supply.cancel
Optional
boolean
. If true
, the request is cancelled. You can only set this property in onBeforeRequest
, onBeforeSendHeaders
, onHeadersReceived
, and onAuthRequired
.redirectUrl
Optional
string
. This is a URL, and if set, the original request is redirected to that URL. You can only set this property in onBeforeRequest
or onHeadersReceived
.onHeadersReceived
stage, in which case the redirect uses the GET method.requestHeaders
Optional
webRequest.HttpHeaders
. This is an HttpHeaders
object, an array in which each object represents a header. If set, the request is made with these headers rather than the original headers. You can only set this property in onBeforeSendHeaders
.
responseHeaders
Optional
webRequest.HttpHeaders
. This is an HttpHeaders
object, an array in which each object represents a header. If set, the server is assumed to have responded with these response headers instead of the originals. You can only set this property in onHeadersReceived
. If multiple extensions attempt to set the same header (for example, Content-Security-Policy
), only one of the changes will be successful.upgradeToSecure
Optional
boolean
. If set to true
and the original request is an HTTP request, this will prevent the original request from being sent and instead make a secure (HTTPS) request. If any extension returns redirectUrl
in onBeforeRequest
, then upgradeToSecure
will be ignored for that request. You can only set this property in onBeforeRequest
.Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
BlockingResponse |
Yes |
14 |
45 |
? |
Yes |
No |
? |
? |
48 |
? |
? |
? |
upgradeToSecure |
No |
No |
59 |
? |
No |
No |
? |
? |
59 |
? |
? |
? |
Note: This API is based on Chromium's chrome.webRequest
API. This documentation is derived from web_request.json
in the Chromium code.
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest/BlockingResponse