Optional Domain mit Port und ohne für Sharelinks
This commit is contained in:
@@ -2,9 +2,33 @@
|
||||
* gemeinsam.js - Hilfsmittel für alle Dialogseiten.
|
||||
*/
|
||||
|
||||
/** Ruft die Ereignisseite und wirft bei Fehlern eine Ausnahme. */
|
||||
/**
|
||||
* Ruft die Ereignisseite und wirft bei Fehlern eine Ausnahme.
|
||||
*
|
||||
* Unterscheidet zwei Fälle, die sonst dieselbe nichtssagende Meldung
|
||||
* ergeben ("An unexpected error occurred"):
|
||||
*
|
||||
* * Die Nachricht erreicht keinen Empfänger - das Hintergrundskript
|
||||
* ist nicht geladen oder abgestürzt.
|
||||
* * Der Empfänger meldet einen Fehler zurück.
|
||||
*/
|
||||
export async function ruf(befehl, daten = {}) {
|
||||
const antwort = await browser.runtime.sendMessage({ befehl, ...daten });
|
||||
let antwort;
|
||||
try {
|
||||
antwort = await browser.runtime.sendMessage({ befehl, ...daten });
|
||||
} catch (err) {
|
||||
console.error("[paperless] sendMessage", befehl, err);
|
||||
throw new Error(
|
||||
`Das Hintergrundskript antwortet nicht (${befehl}).\n`
|
||||
+ `Ursprüngliche Meldung: ${err?.message || err}\n\n`
|
||||
+ `Einzelheiten in der Konsole: Extras -> Entwicklerwerkzeuge -> `
|
||||
+ `Debuggen von Add-ons -> Inspizieren.`);
|
||||
}
|
||||
if (antwort === undefined) {
|
||||
throw new Error(
|
||||
`Keine Antwort auf ${befehl}. Das Hintergrundskript ist `
|
||||
+ `vermutlich nicht geladen.`);
|
||||
}
|
||||
if (!antwort?.ok) {
|
||||
throw new Error(antwort?.fehler || `Aufruf ${befehl} fehlgeschlagen`);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user