Javascript Facebook变量问题

时间:2013-11-08 04:14:00

标签: javascript facebook

好的,所以我知道Javascript并且已经为Facebook拼凑了一个小应用程序。问题出在我的JS和facebook api之间。

我使用标准库用一个用户朋友列表填充数组并显示它们以供选择。

function renderMFS() {
// First get the list of friends for this user with the Graph API
FB.api('/me/friends', function(response) {
    var container = document.getElementById('mfs');
    var mfsForm = document.createElement('form');
    mfsForm.id = 'mfsForm';

    // Iterate through the array of friends object and create a checkbox for each one.
    for (var i = 0; i < Math.min(response.data.length, 1000); i++) {
        var friendItem = document.createElement('div');
        friendItem.id = 'friend_' + response.data[i].id;
        friendItem.innerHTML = '<input type="radio" onclick="sendSlap(this)" name="friends" value="' + response.data[i].id + '" />' + response.data[i].name;

        mfsForm.appendChild(friendItem);

    }

    container.appendChild(mfsForm);
    });

}

然后我使用自己的函数发布了两条Feed消息。

function sendSlap(cb) {



FB.ui({
    method : 'feed',
    link: 'https://apps.facebook.com/537130286376086',
    to : cb.value,
    description : 'You have been bitch slapped by a friend',
    actions: [
        {'name': 'Slap Back', 'link': 'https://apps.facebook.com/537130286376086'}
        ],
}, function(response) {
});

FB.ui({
    method : 'feed',
    link: 'https://apps.facebook.com/537130286376086',
    description: "Someone just got bitch slapped",
    actions: [
        {'name': 'Slap Someone!', 'link': 'https://apps.facebook.com/537130286376086'}
        ],
}, function(response) {
});

}

所有这一切都很好。问题是当我试图将实际数据带入“帖子”时。我的第一种方法没有用,并且没有错误,它只是没有产生一个帖子。

description: "Someone just got bitch slapped" + cb.name,

如您所见,var“cb”带有来自呼叫的数据。 cb.value工作正常,它以同样的方式和我想要做的事情被调用。但是,我没有深入研究,而是迅速创建了一个单独的函数来提取我需要的信息。

FB.api(cb.value, function(response) {

    var data1=response.name;
            return data1;


    }

我使用警报来检查cb.value是否正常通过,而且response.name是正确的,我检查了所有数据的拼写。然后我将data1拉回到帖子中并在帖子中得到“未定义”。我摆弄了这几种方式,它只是没有带回数据。第一种方法最有意义,但这里存在严重错误。

2 个答案:

答案 0 :(得分:1)

morantis,我有一个构建的应用程序并且遇到了一些问题,我通过使用带有访问令牌的FB.getLoginStatus来解决它,并且在这些函数中需要fb.ui时,它在我的应用程序中给了我全部功能,并且完全控制您从用户那里获得的所有数据。 也使用全局对象,保持信息像饲料一样。

答案 1 :(得分:0)

使用原始电话,我解决了一半的问题。在第一个函数中,我将“名称”从“朋友”更改为response.data [i] .name。这使得从第一个函数中提取数据变得更容易。事实是该功能正在发送“div”及其所有信息。