检查 facebook link 的列表是 FB 页面还是 FB 个人资料?

Check List of facebook link is FB page or FB profile?

我有一个 facebook link 列表。我想检查 link 是 Facebook 个人资料还是 Facebook 页面。

例子

data = [
'https://www.facebook.com/<username-profile-1>',
'https://www.facebook.com/<username-fanpage>',
'https://www.facebook.com/<username-profile-2>',
'https://www.facebook.com/<username-fanpage-xxx>',
];

function checkFbLinks(data) {
  // code here
}

结果

FBProfile = [
'https://www.facebook.com/<username-profile>',
'https://www.facebook.com/<username-profile-2>',
];
FBFanPage = [
'https://www.facebook.com/<username-fanpage>',
'https://www.facebook.com/<username-fanpage-xxx>',
];

我尝试研究并发现了这个 API。

https://graph.facebook.com/v12.0/<username>/posts?limit=31&access_token=<access_token>

如果它是 FB 页面,它将 return 一个帖子列表,否则它将 return FB 个人资料错误。
但是对于 links 的列表(可能是 100 - 200 links),这种方式不是最优的。

如果连续调用很多,最好使用批量请求:https://developers.facebook.com/docs/graph-api/batch-requests/

注意限制,批量请求不会规避 API 限制。