我最近创建了一款Facebook应用来管理好友列表。我可以创建和删除它们,我惊讶地发现FB API没有提供任何方法来重命名朋友列表。
在Facebook中,可以重命名好友列表。使用Firebug,我看到当我通过facebook重命名列表时,这个页面被称为:
https://www.facebook.com/friends/ajax/lists.php
方法:POST
参数:
__ 1 1
__用户myUID
fb_dtsg AQBcx3kd
flid myFriendListID
phstamp 1658166991205110710078
重命名ztest456
来源: fb_dtsg = AQBcx3kd&安培; FLID = myFriendListID&安培;重命名= ztest456&安培; _ 用户= 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得到的是ERROR。我在stackoverflow中读到了可能通过使用JSONP或允许在jquery $ .support.cors = true中生成跨域ajax请求; (我启用了cors支持,但它仍无效)。
另外一个问题是phpstamp和fb_dtsg每次都会改变(fb_dtsg可能是同一个会话,对于每个请求,phpstamp似乎都会增加1)。
老实说我不知道该用什么,看起来很挑战(当然,没有提供facebook的支持)所以我在这里请你的支持;)