【发布时间】:2025-12-19 00:25:01
【问题描述】:
我正在开发一个与 facebook 集成的网络应用程序,并且我正在使用请求对话框来邀请新用户。因此,我的应用程序的用户可以单击一个按钮向他的一些尚未使用的 Facebook 朋友发送应用请求。
exports = fm.namespace(this,'bla','facebook')
exports['init'] = function(){
window.fbAsyncInit = function() {
if (undefined !=RAILS_ENV['facebook_app_id'])
{FB.init({
appId : RAILS_ENV['facebook_app_id'], // App ID
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
oauth : true, // enable OAuth 2.0
xfbml : true // parse XFBML
});}
};
// Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
}
exports['sendRequestToOneRecipient']= function (uid) {
FB.ui({method: 'apprequests',
message: "bla bla",
to: uid
}, requestCallback);
function requestCallback(response) {
if (response && response.to) {
console.log("Message was sended");
} else {
console.log("Message was not sended.");
}
}
}
据我所知,它不需要任何权限,因为它是来自用户的显式操作。 当用户单击按钮时,会出现 facebook 窗口,并且一切正常。回调正在发回目的地的 appId 和用户 ID,但该消息从未在 facebook 目的地帐户中得到通知
控制台上没有 javascript 错误
类似的,我正在向 facebook 朋友的墙上发帖,它可以正常工作。相同的代码,但不是'apprequest',方法是'feed'
【问题讨论】:
-
一切似乎都是正确的...是否有任何错误显示?或者只是尝试向测试帐户发送应用请求并检查该请求是否通过图形 api explorer developers.facebook.com/tools/explorer 到达测试帐户 - 您的查询应该是 graph.facebook.com/test_acc_id/apprequests
-
非常感谢您的回答。我已经在您发送给我的工具上进行了检查,并且应用程序在那里。我没有使用测试帐户。我发送到我的另一个 Facebook 帐户。也许这就是问题所在?
-
工具返回的数据 { "id": "315836123333964_100003158789166", "application": { "name": "XXX_test", "canvas_name": "XXX", "namespace": "XXX ", "id": "161947XXX94867" }, "to": { "name": "Juan Lab", "id": "100003153330166" }, "from": { "name": "Miguel Martin", "id ": "1383976222" }, "message": "嘿,看看!:)", "created_time": "..." },我不知道那些画布和命名空间字段是什么。也许我还有一些东西要在 Facebook 应用程序上配置??
-
在 facebook 开发人员上配置我的 facebook 应用程序时,我有指向 localhost:3000 的 url 站点以及指向 localhost 的域。我不知道该配置是否无法正常工作
-
您可以使用任何 facebook 帐户.. 这里看起来也不错.. 其他用户(您发送给他的人)是否收到了通知,或者如果该用户已经使用相同的应用程序,请检查左侧导航应用名称附近的任何更新!
标签: javascript facebook