Расширение chrome background js связывается с сервером и пытается удержать что-то на плаву во время задержки связи - PullRequest
0 голосов
/ 03 ноября 2018

Для связи сервера с сервером в фоновом режиме расширения Chrome требуется много времени. Таким образом, вы должны молчать, пока не придет значение ответа. Какой метод я должен использовать?

background.js

chrome.tabs.onUpdated.addListener(function (tabId, tab, changeInfo) {
            let url = changeInfo.url;
            if (url != localStorage.getItem('url')){
                chrome.tabs.executeScript({
                    code: 'document.URL'
                },function (domain) {
                    localStorage.setItem('url', domain);
                })
            }
            else



                var xhr = new XMLHttpRequest();

                xhr.onload = function () {
                if (xhr.status === 200 || xhr.status === 201) {
                    let a = JSON.parse(xhr.responseText);
                    let b = a.count;
                    let c = a.check;
                    if(c == true){
                        alert('베너가 ' + b + '개 검출된 사이트입니다.');
                        localStorage.setItem('blocked', changeInfo.url);
                        chrome.tabs.executeScript({
                            code: 'history.go(-1)'
                        })
                    }
                    else
                        alert('오류')
                } else {
                    console.error(xhr.responseText);
                }
            };
                xhr.open('POST', 'http://soylatte.kr:3000/image/check');
                xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
                xhr.send('url=' + changeInfo.url);

        })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...