browser_erweiterung
Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Browser Erweiterung (extension/addon)
nützliche Erweiterungen
- Picture-in-Picture Extension (by Google) → Chrome
Entwicklung
Messaging Test (Chrome-only wegen Manifest version 3)
Diese Erweiterung testet die Kommunikation (Messaging) zwischen einem Service Worker (Background Script) und einem Content Script, dass beim Klick auf die Erweiterung in die aktive Seite injected wird. Die Kommunikation kann man in den beiden DevTools (F12) Fenstern beobachten
- Service Worker: Erweiterungsseite > Developer mode > service worker untersuchen > Konsole
- Content Script: auf aktueller Seite die DevTools Konsole öffnen
- manifest.json
{ "manifest_version": 3, "name": "Test", "version": "1.0", "description": "", "background": { "service_worker": "service-worker.js", "type": "module" }, "action": { "default_title": "", "default_icon": {} }, "icons": {}, "permissions": [ "activeTab", "scripting" ] }
- service-worker.json
"use strict"; chrome.action.onClicked.addListener((tab) => { chrome.scripting.executeScript({ target: { tabId: tab.id }, files: ["content-script.js"], }); }); chrome.action.onClicked.addListener((tab) => { chrome.tabs.sendMessage(tab.id, { payload: "SW -> CS" }, (response) => { console.log(`[SW] Response: ${response.payload}`); }); }); chrome.runtime.onMessage.addListener((request, sender, response) => { response({ payload: "Message recieved by SW!" }); console.log(`[SW] Request: ${request.payload}`); });
- content-script.json
"use strict"; chrome.runtime.onMessage.addListener((request, sender, response) => { response({ payload: "Message recieved by CS!" }); console.log(`[CS] Request: ${request.payload}`); }); chrome.runtime.sendMessage({ payload: "CS -> SW" }, (response) => { console.log(`[CS] Response: ${response.payload}`); });
/home/http/wiki/data/attic/browser_erweiterung.1639216891.txt · Zuletzt geändert: von david
