Facebook 登录未响应 FB.login 响应

标签 facebook

我正在开发一个与 facebook 集成的 android phonegap 应用程序。 FB.login(function(response) 函数有一个响应处理程序,当它被调用时 用户点击 fb 按钮,但没有进入功能响应 或 alert('test') 每次。只有当我点击时它才会进入这个脚本 大约 5 或 6 次。我需要的是在我第一次登录 facebook 时获取访问 token 。我已经浏览了很多关于这个的链接但是 无法为此找到确切的解决方案...

FB login callback function not responding if user is already logged in facebook

即使这个问题看起来是一样的,但我想不出我的解决方案。

这是正在运行的代码:

<div id="data">Hello Facebooktesters, loading ...</div>

<button onclick="login()">Login</button>
<button onclick="me()">Me</button>
<button onclick="logout()">Logout</button>
<button onclick="Post()">facebookWallPost</button>

<script type="text/javascript">
    document.addEventListener('deviceready', function() {
        try {
            alert('Device is ready! Make sure you set your app_id below this alert.');
            FB.init({
                appId : "xxxxxxxxxxxxxxx",
                nativeInterface : CDV.FB,
                useCachedDialogs : false
            });
            document.getElementById('data').innerHTML = "FB init executed";
        } catch (e) {
            alert(e);
        }
    }, false);

    function me() {
        FB.api('/me/friends', {
            fields : 'id, name, picture'
        }, function(response) {
            if (response.error) {
                alert(JSON.stringify(response.error));
            } else {
                var data = document.getElementById('data');
                fdata = response.data;
                console.log("fdata: " + fdata);
                response.data.forEach(function(item) {
                    var d = document.createElement('div');
                    d.innerHTML = "<img src="+item.picture+"/>" + item.name;
                    data.appendChild(d);
                });
            }
            var friends = response.data;
            console.log(friends.length);
            for ( var k = 0; k < friends.length && k < 200; k++) {
                var friend = friends[k];
                var index = 1;

                friendIDs[k] = friend.id;
                //friendsInfo[k] = friend;
            }
            console.log("friendId's: " + friendIDs);
        });
    }

    function login() {
        FB.login(function(response) {
            alert('test');
            if (response.authResponse) {
                alert('logged in');
                var access_token =   FB.getAuthResponse()['accessToken'];
                alert(access_token);
                 window.location = "test.html"
            } else {
                alert('not logged in');
            }
        }, {
            scope : "email"
        });
    }

    function logout() {
        alert('test');
          FB.logout(function(response) {
              alert('logged out');
            //window.location.reload();
          });
    }

    function Post(ele) {
        var domain = 'http://192.168.0.46:8082/';
        console.log('Debug 1');
        var params = {
        method: 'feed',
        name: 'test - test',
        link: domain+'test/test/showproddetails.action?product.productId=1',
        picture: 'http://www.careersolutions.com/test.png',
        caption: 'test',
        description: 'test'
        };
        console.log(params);
        FB.ui(params, function(obj) { console.log(obj);});
    }

</script>

谢谢, 拉吉

最佳答案

你在这一行中缺少分号:

window.location = "test.html"

关于Facebook 登录未响应 FB.login 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11080450/

相关文章:

javascript - 分享来自 Facebook FanPage 的帖子吗?

javascript - Facebook 登录页面 - CSS 未定义

facebook - 用于检测选项卡中用户语言的 FBML 标记

Facebook 错误 : session was closed and was not closed normally (phonegap build/facebook plugin error)

ios - 我仅在使用 iOS Facebook 集成时获得 Facebook Active Access Token

facebook - publish_actions 问题

facebook - 请求在 v2.3 API 中获取 Facebook 页面的总点赞数

php - Facebook API 权限的 fatal error

android - 如何取消弃用 Facebook 代码

facebook - 我可以在照片表上对 Facebook FQL 查询进行分页吗?