【发布时间】:2012-12-02 06:03:17
【问题描述】:
我最近创建了一个 Facebook 应用来管理好友列表。我可以创建和删除它们,但我惊讶地发现 FB API 没有提供任何方法来重命名好友列表。
在 facebook 中可以重命名好友列表。使用 Firebug,我看到当我通过 facebook 重命名列表时,此页面被称为:
https://www.facebook.com/friends/ajax/lists.php
方法:发布
参数:
__a 1
__user myUID
fb_dtsg AQBcx3kd
flid myFriendListID
phstamp 1658166991205110710078
重命名 ztest456
来源: fb_dtsg=AQBcx3kd&flid=myFriendListID&rename=ztest456&_user=myUID&_a=1&phstamp=1658166991205110710078
所以在我的工作应用程序中,我尝试通过 ajax 函数构建,如下所示:
$.ajax({
type: "POST",
url: "https://www.facebook.com/friends/ajax/lists.php",
data: "flid=" + myFriendListID + "&rename=" + newName + "&__user=" + uid + "&__a=1",
success: function(msg){
},
error: function(msg){
console.log("Error: " + msg);
}
}).done(function( msg ) {
//console.log("Feedback: " + msg);
});
我从 facebook 得到的是错误。我在stackoverflow中读到可能通过使用JSONP或允许在jquery中发出跨域ajax请求 $.support.cors = true; (我启用了 cors 支持,但它仍然不起作用)。
还有一个问题是phpstamp和fb_dtsg每次都会改变(fb_dtsg可能是同一个会话,phpstamp似乎每次请求都加1)。
老实说,我不知道该用什么,这似乎是一个很大的挑战(当然,因为没有提供来自 facebook 的支持)所以在这里我请求您的支持 ;)
【问题讨论】:
-
pffff thx 感谢那些在没有提供反馈的情况下对我的问题投反对票的人。
标签: jquery ajax facebook cross-domain jsonp