Я работал над расширением браузера Chrome. Когда я попытался подключить firebase к веб-приложению двумя возможными способами, ни один из них не работает.
- использование "npm install firebase" Когда я попытался выполнить эту команду для установки firebase в папку моего проекта и написал fireConn.js файл вместе с конфигурацией, которую я получил из проекта firebase, созданного в Интернете.
import {initializeApp} from 'firebase/app';
import {getFirestore} from 'firebase/firestore';
Ошибка, которую я получил, заключается в
Uncaught TypeError: Failed to resolve module specifier "firebase/app". Relative references must start with either "/", "./", or "../".
- используя https://www.gstatic.com/firebasejs/9.4.1/firebase-app.js url-адрес для подключения к базе данных firebase
import {initializeApp} from "https://www.gstatic.com/firebasejs/9.4.1/firebase-app.js";
import {getFirestore} from "https://www.gstatic.com/firebasejs/9.4.1/firebase-firestore.js";
Поскольку мой проект является расширением chrome, у меня есть файл manifest.json в следующем формате:
{
"name": "xxx",
"manifest_version": 3,
"version": "1.0",
"permissions": ["cookies","tabs"],
"host_permissions": ["<all_urls>"],
"action": {
"default_popup": "popup.html"
},
"content_security_policy": {
"extension_pages": "script-src 'self'; object-src 'self'",
"sandbox": "sandbox allow-scripts; script-src 'self' 'https://apis.google.com/' 'https://www.gstatic.com/' 'https://*.firebaseio.com' 'https://www.googleapis.com' 'https://ajax.googleapis.com'; object-src 'self'"
}
}
Ошибка, которую я получал:(что-то пошло не так с content_security_policy)
Refused to load the script 'https://www.gstatic.com/firebasejs/9.4.1/firebase-firestore.js' because it violates the following Content Security Policy directive: "script-src 'self'". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.