首页 > 解决方案 > 拒绝加载脚本:https://apis.google.com/js/api.js

问题描述

我正在尝试为 chrome 扩展实现 firebase 身份验证。我可以使用电子邮件和密码登录,但无法使用社交登录(google 和 facebook)

这是错误消息:

Refused to load the script 'https://apis.google.com/js/api.js?onload=__iframefcb541553' because it violates the following Content Security Policy directive: "script-src 'self' blob: filesystem: chrome-extension-resource:". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.

清单.json

{
  "manifest_version": 2,
  "name": "...",
  "description": "...",
  "version": "0.0.0.1",
  "icons": {},
  "background": {
    "scripts": [
      "event.js"
    ],
    "persistent": true
  },
  "permissions": ["tabs", "https://*/*","activeTab"],
  "browser_action": {
    "default_title": "...",
    "default_popup": "popup.html"
  },
  "content_scripts": [
    {
      "matches": ["*://*/*"],
      "css": [],
      "js": ["content.js"]
    }
  ],
  "content_security_policy": "script-src 'self' https://apis.google.com; object-src 'self';"
}

登入

  handleSocialLogin(provider) {
    return () => {
      auth
        .signInWithPopup(provider)
        .then(user => {
          this.props.onUserChange(user)
          localStorage.setItem('user', JSON.stringify(user))
        })
        .catch(error => this.setState({ error }))
    }
  }

标签: google-chrome-extensionfirebase-authentication

解决方案


推荐阅读