gpt4 book ai didi

javascript - 如何在用户喜欢带有 Facebook Like 插件的页面后注销用户?

转载 作者:行者123 更新时间:2023-11-29 15:44:36 25 4
gpt4 key购买 nike

我正在构建一个非常小的网页,用于自助服务亭。目标是让人们通过触摸屏“喜欢”现场的 Facebook 页面。

用户必须先登录才能点赞页面,因此 Facebook 会提供他们的常规登录弹出窗口,这很有魅力。当用户登录时,页面被点赞(因为他们点击了“喜欢”按钮)并且用户应该再次注销(因为没有人想在公共(public)计算机上登录)。页面应在此之后重新加载。

现在这可以通过 Facebook 的 Javascript API 实现。他们有一个事件监听器,当用户喜欢一个页面时调用一个函数。我只需要在该事件触发时调用 FB.logout() :)。

不幸的是,它对我不起作用。我可能很笨,或者 Facebook API 有问题。

我的代码:

window.fbAsyncInit = function() {
FB.Event.subscribe('edge.create', function(response) {
FB.logout(function(response) {
window.location.reload();
});
});
}

但这不起作用,我认为问题出在 Facebook 的登录部分。

有没有人有这方面的经验?它应该很简单,但我无法让它工作......

我尝试过的一些事情:

  • 提示正常登录 - 可能,但它说我的应用程序需要访问某些信息。实际上,我唯一想做的就是让用户喜欢一个页面。

  • setTimeout 循环 - 试过了,但 Facebook 登录似乎在我的页面上停止了整个 Javascript?

编辑:我知道人们将他们的凭据插入公共(public)计算机是个坏主意,但客户希望这样。还有一个链接到 Facebook 页面的二维码,但这并不能解决我的问题:)。

TL;DR:来自“赞”按钮的 Facebook Javascript 回调在用户登录时有效,但在用户必须通过 Facebook 弹出窗口登录时失败。

最佳答案

Unfortunatly, it isn't working for me. I could be very dumb, or the Facebook API is bugged.

没有。问题在于你的方法,resp。概念。

FB.logout 使用事件访问 token (否则,我在网上访问的任何网站都可以让我退出 Facebook,这将是巨大的烦人)。

但由于用户未连接到您的应用,因此您没有访问 token 。

Prompt a normal login - Possible, but it says that my app needs access to some information.

这是您获得访问 token 的唯一方式,也是您可以使用 FB.logout 的唯一方式。

(如果用户登录到 Facebook,但随后拒绝连接到您的应用程序,您将同样没有访问 token ,因此在这种情况下您也无法注销他们。)

关于javascript - 如何在用户喜欢带有 Facebook Like 插件的页面后注销用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13727101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com