manifest.json:
{
"name": "Title",
"description": "Description",
"version": "1.0",
"manifest_version": 3,
"icons": {
"16": "./icons/16.jpg"
},
"action": {
"default_popup": "index.html"
},
"permissions": ["scripting", "tabs"],
"host_permissions": ["http://<my_ip_server>/*"],
"background":{}
}
"use strict";
const mainSubmit = document.querySelector("#main__submit");
mainSubmit.addEventListener("click", () => {
// получаем активную вкладку
chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => {
const tab = tabs[0];
if (!tab) {
alert("Нет активных вкладок");
return;
}
const activeTabId = tab.id;
// внедрение кода в текущую web-страницу
const injectSpec = {
target: { tabId: activeTabId },
func : getInformation // внедрится на страницу в активной вкладке
};
chrome.scripting.executeScript(injectSpec);
});
});
function getInformation() {
const result = {
data: "1"
}
// обращаемся к серверу для получения ответа
fetch("http://<my_ip_server>/cats/get_milk/", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(result)
})
.then((response) => response.json())
.then((data) => {
const { res } = data;
alert(`Response from server: ${res}`);
})
.catch((error) => {
alert(`Произошла ошибка при обращении к серверу: ${error}`);
});
return resultQuestion;
}
получаю ошибку: Uncaught (in promise) Error: Cannot access a chrome:// URL