我試圖使用Facebook JavaScript SDK向用戶朋友發送「應用」邀請。 這裏是點擊Facebook的按鈕時,模板事件:使用Facebook請求對話框與流星
"click #fb": function (e, tmp) {
Meteor.loginWithFacebook({
requestPermissions: ['user_likes',
'friends_about_me',
'user_birthday',
'email',
'user_location',
'user_work_history',
'read_friendlists',
'friends_groups',
'user_groups']
}, function (err) {
if (err) {
console.log("error when login with facebook " + err);
} else {
FB.api('/' + Meteor.user().services.facebook.id + '/friends', { fields: 'name,picture' }, function (response) {
if (response && response.data) {
friends = response.data;
friends_dep.changed();
}
});
}
});
}
之後,我希望用戶邀請人們到我的應用程序,我的代碼看起來像這樣(另外一個模板事件):
FB.ui({method: 'apprequests',
message: 'My Great Request'
}, function(response) {
if (response && response.post_id) {
alert('Post was published.');
} else {
alert('Post was not published.');
}
}
);
它正在工作。所有的用戶朋友都有一個Facebook對話框,但是當試圖發送消息時,我得到了響應錯誤='帖子未發佈'。
我在這裏做錯了什麼?
基本上用戶可以創建一個組 - 我希望用戶能夠邀請他的Facebook好友加入該組。無論如何,發送請求時,接收者只需按「是」,並且會自動添加到發件人組中?
注意到我用我的本地機器又名本地主機:3000
是的,你的權利,我沒有複製從facebook例子代碼,我已經刪除&& response.post_id,現在請求運行良好,但我怎麼處理響應(當接收器點擊「接受「按鈕)??正如我所提到的,我希望接收者通過點擊「接受」創建一個新用戶,如果這個用戶不是我的應用中的用戶,並且將新用戶添加到發件人邀請他的組中。 –
我自己並沒有嘗試過使用FB API的這個特性,但是從閱讀文檔看起來它主要用於基於facebook.com本身構建的遊戲:「請求僅適用於Facebook.com或iOS和Android上的遊戲接受來自遊戲的請求將引導該人進入發送請求的應用程序的畫布頁面URL。「當收件人點擊接受請求時,您發送的請求是在哪裏發送的? – shambles
是的,我已經讀過它,但它沒有意義,爲什麼只用於遊戲?如果我按下facebook上的「accpet」,它會直接給我我的應用程序。 (本地主機)。我想我需要找到其他方法來解決這個問題。 –