Я решил эту проблему, создав сценарий на стороне сервера, который не требует входа в систему, он возвращает строку JSON, которая возвращает информацию о том, вошел ли пользователь в систему с этим доменным именем.
background.js в расширении браузера отправляет строку вызовов AJAX в скрипт для каждого доменного имени, используя цепочки обещаний. Результаты показывают, в какой домен выполнен вход или в который не зарегистрирован ни один домен.
Серверная сторона:
session_start();
$signedIn = "";
$json_array ="";
//determine value of signedIn from session
(isset($_SESSION['serverUser'])) ?
$signedIn = 1:
$signedIn = 0;
$json_array = "{\"signedIn\":$signedIn}";
header('Content-Type: application/json');
echo $json_array;
Расширение браузера:
function init() {
fetch(url1)
.then(processJSONtoObj)
.then(function(dataObject) {
//test if user signed
if(dataObject.signedIn) {
//user signed into domain 1
} else {
return fetch(url2)
}
})
.then(processJSONtoObj)
.then(function(dataObj2) {
//test if user signed
if(dataObject2.signedIn) {
//user signed into domain 2
} else {
//user is not signed into either
}
})
}
init();