Description from extension meta
Modifies request headers (including CORS) for development purposes!
Image from store
Description from store
π¨π»βπ» This Extension is intended for developers and it modifies Request Headers, either through the extensionβs main icon or via an exposed API. The API can be accessed from the console or sideloaded scripts (such as Tampermonkey), making it ideal for automated workflows.
π» The API includes enable() and disable() methods for toggling header modifications directly from the global namespace. You can also add, remove and clear either hostnames or headers, and the passed data can be strings, arrays, objects (for the headers) or arrays of objects. Methods include addHostname, addHostnames, removeHostname, removeHostnames, clearHostnames, addHeader, addHeaders, removeHeader, removeHeaders, clearHeaders. All API methods return a Promise that resolves to a boolean indicating success (true) or failure (false).
π API Usage:
The extension exposes a global API object window.requestHeaderModifier that allows you to control its functionality programmatically from your browser's developer console, a website's script (if allowed by CSP), or user script managers like Tampermonkey. All API methods return a Promise that resolves to a boolean indicating success (true) or failure (false).
π enable
window.requestHeaderModifier.enable(); // Enables the header modification functionality. This will apply the currently saved rules. Returns true on success
π disable
window.requestHeaderModifier.disable(); // Disables the header modification functionality. This will clear all active rules. Returns true on success
π addHostname
window.requestHeaderModifier.addHostname(hostname); // Adds a new hostname to the list of target hostnames. If the hostname already exists, no change is made.
π€ Parameter: hostname (string): The hostname to add (e.g., "api.example.com").
βοΈ examples:
await window.requestHeaderModifier.addHostname("newapi.domain.com"); // Adds "newapi.domain.com"
await window.requestHeaderModifier.addHostname("api.another.net"); // Adds "api.another.net"
π addHostnames
window.requestHeaderModifier.addHostnames(hostnames); // Adds multiple hostnames to the list of target hostnames. Duplicate hostnames will be ignored.
π€ Parameter: hostnames (string[]): An array of hostnames to add (e.g., ["app.domain.com", "app.example.com"]).
βοΈ example:
await window.requestHeaderModifier.addHostnames([
"api.test.com",
"localhost:3000",
]); // Returns true on success
π removeHostname
window.requestHeaderModifier.removeHostname(hostname); // Removes a specific hostname from the list of target hostnames.
π€ Parameter: hostname (string): The hostname to remove.
βοΈ example:
await window.requestHeaderModifier.removeHostname("newapi.domain.com"); // Removes "newapi.domain.com"
π removeHostnames
window.requestHeaderModifier.removeHostnames(hostnames); // Removes multiple hostnames from the list of target hostnames. Hostnames not found will be ignored.
π€ Parameter: hostnames (string[]): An array of hostnames to remove.
βοΈ example:
await window.requestHeaderModifier.removeHostnames([
"api.old.com",
"dev.api.net",
]); // Returns true if any hostnames were removed, false otherwise
π clearHostnames
window.requestHeaderModifier.clearHostnames(); // Clears all hostnames from the list, effectively disabling header modification for all domains until new hostnames are added.
βοΈ example:
await window.requestHeaderModifier.clearHostnames(); // Clears all hostnames
π addHeader
window.requestHeaderModifier.addHeader(header); // Adds a new custom request header or updates an existing one if a header with the same name already exists.
π€ Parameter: header (string | object): The header to add.
String format: "Header-Name: Header-Value" (e.g., "X-Custom-Auth: mytoken123")
Object format: { "headerName": "headerValue" } (e.g., { "X-Client-ID": "app-123" })
βοΈ examples:
// Using string format
await window.requestHeaderModifier.addHeader("X-My-Header: MyValue");
// Using object format
await window.requestHeaderModifier.addHeader({
"Content-Type": "application/json",
});
// Updating an existing header (will overwrite "MyValue" with "NewValue")
await window.requestHeaderModifier.addHeader("X-My-Header: NewValue");
π addHeaders
window.requestHeaderModifier.addHeaders(headers); // Adds multiple request headers to the list. If headers with the same names exist, their values will be updated.
π€ Parameter: headers ((string | object)[]): An array of headers to add. Each element can be a string like "Header-Name: Header-Value" or an object like { "headerName": "headerValue" }.
βοΈ examples:
// Using string format array
await window.requestHeaderModifier.addHeaders([
"X-My-Header: Value1",
"Y-My-Header: Value2",
]); // Returns true on success
// Using object format array
await window.requestHeaderModifier.addHeaders([
{ "Content-Type": "application/json" },
{ "Accept-Language": "en-US" },
]); // Returns true on success
// Mixing formats and updating existing
await window.requestHeaderModifier.addHeaders([
"Cache-Control: no-cache",
{ "X-My-Header": "UpdatedValue" }, // This will update X-My-Header if it exists
]); // Returns true on success
π removeHeader
window.requestHeaderModifier.removeHeader(header); // Removes a specific custom request header by its name. The value part of the input is ignored for removal.
π€ Parameter: header (string | object): The header to remove. Only the header name is considered for removal.
String format: "Header-Name: AnyValue" (e.g., "X-My-Header: ignored")
Object format: { "headerName": "ignoredValue" } (e.g., { "Content-Type": "ignored" })
βοΈ examples:
// Using string format
await window.requestHeaderModifier.removeHeader("X-My-Header: something"); // Removes X-My-Header
// Using object format
await window.requestHeaderModifier.removeHeader({ "Content-Type": "whatever" }); // Removes Content-Type
π removeHeaders
window.requestHeaderModifier.removeHeaders(headers); // Removes multiple request headers from the list. Only the header name is considered for removal. Headers not found will be ignored.
π€ Parameter: headers ((string | object)[]): An array of headers to remove. Each element can be a string like "Header-Name: AnyValue" or an object like { "headerName": "ignoredValue" }.
βοΈ examples:
// Using string format array
await window.requestHeaderModifier.removeHeaders([
"X-Old-Header: anything",
"Another-Header",
]); // Returns true if any headers were removed, false otherwise
// Using object format array
await window.requestHeaderModifier.removeHeaders([
{ Authorization: "some-token" },
{ Accept: "application/xml" },
]); // Returns true if any headers were removed, false otherwise
π clearHeaders
window.requestHeaderModifier.clearHeaders(); // Clears all custom request headers from the list.
βοΈ example:
await window.requestHeaderModifier.clearHeaders(); // Clears all custom headers
-----------
π₯· GitHub / Source - https://github.com/lvladikov/request-header-modifier-chrome-extension
Statistics
Installs
8
history
Category
Rating
5.0 (1 votes)
Last update / version
2025-06-20 / 2.3
Listing languages
en