Ich versuche, URL-Inspektor mit nativen Nachrichten von Firefox zu erstellen. Das Problem ist, wenn native Anwendung ein Urteil sendet, onBeforeRequest listen bereits freigegeben Anforderung, so dass Umleitung nicht erfolgt. Können Sie mir bitte helfen, meine Nebenstelle bis zu 2 Sekunden auf eine Antwort warten zu lassen und die Anfrage umzuleiten, wenn die Antwort "0" ist?URL-Prüfung mit nativen Nachrichten von Firefox
var port = browser.runtime.connectNative("ping_pong");
function inspectURL(requestDetails) {
console.log("Loading: <" + requestDetails.url + ">");
port.postMessage(requestDetails.url);
console.log("Posting complete <" + requestDetails.url + ">");
}
port.onMessage.addListener((response) = > {
console.log("Received: <" + response + ">");
if (response == "1")
{
console.log("Good url!!!");
}
else
{
console.log("BAD url - redirecting!!!");
return {
redirectUrl: "https://38.media.tumblr.com/tumblr_ldbj01lZiP1qe0eclo1_500.gif"
};
}
});
browser.webRequest.onBeforeRequest.addListener(
inspectURL,
{ urls: ["<all_urls>"] },
["blocking"]
);