Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook 仅限我的朋友访问应用程序facebbok_Facebook - Fatal编程技术网

Facebook 仅限我的朋友访问应用程序facebbok

Facebook 仅限我的朋友访问应用程序facebbok,facebook,Facebook,如何限制我的朋友只能访问facebook应用程序。 在这种情况下,通过“facebook连接”,而不必使用“沙箱” 我知道它必须只允许他的朋友的id,但从技术上讲是如何进行的?您可以通过查询https://graph.facebook.com/me/friends,使用您的用户访问令牌(而不是应用令牌)。Facebook将返回您朋友的JSON数组。您可以在此处阅读更多信息: 然后,您可以迭代JSON数组并在服务器中存储列表,例如,在java中: try { JSONObject res

如何限制我的朋友只能访问facebook应用程序。 在这种情况下,通过“facebook连接”,而不必使用“沙箱”


我知道它必须只允许他的朋友的id,但从技术上讲是如何进行的?

您可以通过查询
https://graph.facebook.com/me/friends
,使用您的用户访问令牌(而不是应用令牌)。Facebook将返回您朋友的JSON数组。您可以在此处阅读更多信息:

然后,您可以迭代JSON数组并在服务器中存储列表,例如,在java中:

try {
    JSONObject response = new JSONObject(txtResponse);
    ArrayList<String> myFriends = new ArrayList<String>();
    for (int i=0; i<response.data.length; i++) {
        myfriends.add (response.data[i].id);
    }
    // store the list somewhere
} catch (JSONException e) {
    // something went wrong. 
}
当然,会有一个servlet响应ajax帖子,它会将id与myFriends列表中的id进行比较

PS1:我是在头上写的,所以可能会有打字错误,但你明白了

PS2:您也可以使用fql来代替图形api。更多信息请点击此处:

你好,阿莱亚当。你能帮我做这个吗?如果要付多少钱?对不起,找错人了。我只是个业余程序员,所以我不敢为此收费。如果你愿意,包括我在内的许多人都会乐意帮助你。另外,如果你只想雇用某人,请考虑将问题标记为“回答”或“删除”。
if(FB.getSession() != null) {
    var session = FB.getSession();
    if (session.uid===undefined)
       session = session.session;
    $.post("login", {id:session.uid}, function (response) {
        // you do here whatever you want based on the server decision to allow access or not.
    });
}