Firefox WebExtension / YesScript2 / Block scripts on specific sites #1

Előzmények itt.

Akartam egy kiegészítőt írni, ami blokkol scripteket bizonyos oldalakon. Ez meg van, tervezem még tovább fejleszteni beállító felülettel, ahol be lehet dobni oldalakat. Elvileg Chrome kompatibilis lehet a kód, de ezt még tesztelni kell.

Használat:
https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Your_first_We…

1) Firefox-ban about:debugging oldal megnyitása
2) Load Temporary Add-on gomb
3) background.js kitallózása

A böngésző újraindításával elveszik és újra kell tölteni természetesen. Ha kész lesz a beállító felület is, akkor kérvényezem majd a kiegészítők közé való felvételét és akkor telepíthető maradandóan.

http://paste.ubuntu.com/25663119/

manifest.json:


{
	"description": "block scripts on specific sites",
	"manifest_version": 2,
	"name": "YesScript2",
	"version": "1.0",

	"applications": {
	  "gecko": {
		"id": "87b5a7b1-496e-4377-b87d-e2fcda9d457f",
		"strict_min_version": "55.0"
	  }
	},

	"permissions": [
		"webRequest",
		"webRequestBlocking",
		"<all_urls>"
	],

	"background": {
		"scripts": [
			"background.js"
		]
	}
}

background.js:


// info: WebExtension to block scripts on specific sites
// https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
browser.webRequest.onHeadersReceived.addListener(
	function(details){
		//console.log(details);
		// include the original response header too merging the two arrays here
		var rh = details.responseHeaders.concat([{name: "Content-Security-Policy", value: "script-src 'none'"}]);
		return {responseHeaders: rh};
	},
	{urls: ["*://bad-domain1.com/*", "*://bad-domain2.com/*"]},
	["blocking", "responseHeaders"]
);

Szívesen veszek segítséget gyakorló egyetemistáktól vagy másoktól.