Отказался загружать скрипт 'https://www.gstatic.com/firebasejs/9.4.1/firebase-app.js" потому что это нарушает следующую Политику безопасности контента

0

Вопрос

Я работал над расширением браузера Chrome. Когда я попытался подключить firebase к веб-приложению двумя возможными способами, ни один из них не работает.

  1. использование "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 "../".
  1. используя 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.
1

Лучший ответ

0

Во-первых, измените импорт, как показано ниже:

import { initializeApp } from "https://www.gstatic.com/firebasejs/9.4.1/firebase-app.js";
import { getFirestore, collection, getDocs } from "https://www.gstatic.com/firebasejs/9.4.1/firebase-firestore.js";

Более подробную информацию об этом вы можете найти в документации. Поскольку вы используете пакет модулей, к нему необходимо добавить тип="модуль". Правильный формат должен быть:

<script type="module" src="........”></script>

Пожалуйста, обратите внимание: src зависит от того, как вы задаете путь.

Вы также можете ознакомиться с видео "Начало работы с Firebase" для ознакомления с основами веб – Firebase. Кроме того, не удается подключиться к Firebase,к этому может добавить неперехваченная ошибка в Firebase.

2021-11-22 09:28:05

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

Популярное в этой категории

Популярные вопросы в этой категории