facebook-login - 如何在 Google AMP 中实现 Google 和 Facebook 的登录按钮?
问题描述
我想创建一个简单的 Facebook 和 Google 的“登录”按钮。
我阅读了文档(https://amp.dev/documentation/examples/personalization/oauth2_login/#setup)并查看了操场部分中的示例,但我的问题是我该如何做这部分
"facebook-sign-in": "https://ampbyexample.com/oauth/login/facebook",
"google-sign-in": "https://ampbyexample.com/oauth/login/google",
在 AMP 文档示例中:
<script id="amp-access" type="application/json">
{
"authorization": "https://ampbyexample.com/oauth/status?_=RANDOM",
"noPingback": "true",
"login": {
"facebook-sign-in":"https://ampbyexample.com/oauth/login/facebook",
"google-sign-in":"https://ampbyexample.com/oauth/login/google",
"github-sign-in":"https://ampbyexample.com/oauth/login/github",
"sign-out":"https://ampbyexample.com/oauth/logout"
},
"authorizationFallbackResponse": {
"error": true,
"loggedIn": false
}
}
</script>
我在我的应用程序中的这个文件https://ampbyexample.com/oauth/login/facebook里面做什么?我需要做什么?我对这部分很困惑。
编辑 我找到了这个例子,但是如何在没有在 amp 的弹出窗口中打开一个新的弹出窗口的情况下使用 facebook 制作这个逻辑?(https://developers.facebook.com/docs/facebook-login/web)关于这个例子,我的登录按钮只是留在 amp 弹出窗口内......但我的预期结果就像这个例子在这里
解决方案
使用 amp-access 登录将始终打开一个新的弹出窗口。这是为了确保始终可以在您自己的来源上写入第一方 cookie,即使 AMP 页面是从 AMP 缓存中提供的。