javascript - 没有弹出窗口的Facebook登录?

标签 javascript facebook

我正在尝试制作一个简单的 facebook 应用程序,但是对于授权,它似乎总是被弹出窗口阻止程序阻止。因此我的代码是:

FB.init({
        appId  : THEAPPPIDDDD,
            status : true,
            cookie : true,
            xfbml  : true,
   });


FB.login(function(response) {
           if (response.authResponse) {
               FB.api('/me', function(response) {
               FB.logout(function(response) {
                               console.log('Logged out.');
                           });
                   });
           } else {
               console.log('User did not authorize.');
           }
       });

任何帮助将不胜感激......谢谢

最佳答案

我知道这个问题可能与 another question: Stop the facebook popup blocker 重复我重新发布这个是为了帮助 Dave Zhang。我已经为我的网站之一修改了这段代码。在以下代码中,替换 YOUR_APP_ID 和您的网站 url,然后 Facebook 登录将不会弹出。

//Javascript
var uri = encodeURI('http://example.com');
FB.getLoginStatus(function(response) {
    if (response.status === 'connected') {
        window.location.href=uri;
    } else {
        window.location = encodeURI("https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri="+uri+"&response_type=token");
    }
});

这将直接重定向而不是打开弹出窗口。

关于javascript - 没有弹出窗口的Facebook登录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7125320/

相关文章:

facebook - 无效的 redirect_uri : Given URL is not allowed by the Application configuration

javascript - 使用 Javascript 解码 Facebook 签名请求

javascript - 关于这个对象字面量的问题

android - 如何在 Android 中自定义 Facebook 登录按钮

javascript - 即使设置为 "hidden",背面仍然可见

javascript - 用 jQuery 制作下拉菜单

android - 无法使用oauth登录到Facebook

facebook - Flutter:如何注销 Facebook 并获取登录对话框

javascript - 我的nodejs代码出错

javascript - window.event.srcElement 不适用于 firefox?