Google chrome extension 谷歌登录按钮在Chrome扩展中不起作用

Google chrome extension 谷歌登录按钮在Chrome扩展中不起作用,google-chrome-extension,firebase-authentication,google-oauth,Google Chrome Extension,Firebase Authentication,Google Oauth,我有一个firebase应用程序,它要求用户使用Google进行身份验证。 我设法连接了所有设置,用户可以读/写firebase上的预期数据库位置 唯一的问题是:我试图在chrome扩展弹出窗口中显示Google登录按钮。这是我的manifest.json { "manifest_version" : 2, "name" : "MY EXTENSION", "version" : "0.0.6", "browser_action" : { "def

我有一个firebase应用程序,它要求用户使用Google进行身份验证。 我设法连接了所有设置,用户可以读/写firebase上的预期数据库位置

唯一的问题是:我试图在chrome扩展弹出窗口中显示Google登录按钮。这是我的
manifest.json

{
    "manifest_version" : 2,
    "name" : "MY EXTENSION",
    "version" : "0.0.6",
    "browser_action" : {
        "default_popup" : "welcome.html"
    },
    "background" : {
        "scripts" : ["js/jquery.min.js","js/firebase.js","js/firebase_config.js","js/background.js"],
        "persistent" : false
    },
    "oauth2" : {
        "client_id" : "686230544294-m9jfmc18cneiandadq8riborrjmq36in.apps.googleusercontent.com",
        "scopes" : [
            "openid", "email", "profile"
        ]
    },
    "content_security_policy" : "script-src 'self' 'unsafe-eval' https://apis.google.com; object-src 'self'"

}
这是我的
welcome.html

<!DOCTYPE html>
<html>
    <head>

        <meta name="google-signin-scope" content="profile email">
        <meta name="google-signin-client_id" content="686230544294-m9jfmc18cneiandadq8riborrjmq36in.apps.googleusercontent.com">

    </head>
    <body>
        <h1>Welcome. Please sign in</h1>
        <div id="my-signin2"></div>

        <script src="js/google_config.js"></script>
        <script src="https://apis.google.com/js/platform.js?onload=renderButton"></script>

    </body>
</html>

欢迎请登录
弹出窗口将打开除按钮外的所有内容。当我检查它的控制台时,我得到以下错误:

Uncaught
消息:“无效cookiePolicy”堆栈:“gapi.auth2.ExternallyVisibleError:无效cookiePolicy”↵    在纽约(https://apis.google.com/_/scs/apps-static/_/js/k=oz.gapi.en.iUeg......

从firebase端,我可以看到用户登录。
我做错了什么?为什么扩展弹出窗口上没有显示“登录”按钮?

如果您不打算请求额外的OAuth作用域,并且只是将其用于身份验证而不是授权,Firebase Auth
signInWithPopup
将负责在Chrome扩展中为您直接向Google登录用户,只要您将chrome扩展域列入白名单:

如果您不打算请求额外的OAuth范围,并且只是将其用于身份验证而不是授权,只要您将chrome扩展域列入白名单,Firebase Auth
signInWithPopup
将负责在chrome扩展中为您直接向Google登录用户:

Hi Ahmad,你能解决它吗?我也面临着同样的问题。@KanakSony我放弃了并不得不使用FireBase身份验证Hi Ahmad,你能解决它吗?我也面临着同样的问题。@KanakSony我放弃了并不得不使用FireBase身份验证Hi,我需要进行身份验证,然后在登录后调用google日历API。如果我立即验证并调用日历API,但在本地会话中保存的已验证用户失败。在这种情况下,您最好使用google登录js库,因为他们会为您管理OAuth令牌。Firebase Auth只关注AuthN,而不是AuthZ。感谢您的响应,在尝试集成gapi.js.google之后,我放弃了登录不适用于chrome扩展,它会因“无效Cookie策略”而失败".这就是为什么我搬到了Firebase。啊,我明白了。你在GitHub上查看过这个示例代码了吗:嗨,我需要进行身份验证,然后在登录后调用google日历API。如果我立即进行身份验证并调用日历API,效果很好,但是在本地会话中保存了一个经过身份验证的用户,但失败了。在这种情况下,你最好使用google日历API登录js库,因为他们为您管理OAuth令牌。Firebase Auth只关注AuthN而不是AuthZ。感谢您的响应,我在尝试集成gapi.js后放弃了。Google登录不适用于chrome扩展,它会因“无效Cookie策略”而失败.这就是为什么搬到Firebase的原因。啊,我明白了。你在GitHub上查看过这个示例代码吗: