如何从多个社交网络的用户名导出配置文件页面URL

时间:2012-04-05 10:44:20

标签: facebook flickr google-plus

我正在编写一个应用程序,要求用户提供多个社交网络的用户名。例如Twitter,Facebook,Google +。

然后,我希望能够将电子邮件中的可点击链接发送给给定用户。链接应解析为给定用户的配置文件页面。

目前这是一款iOS应用。

对于像Twitter这样的服务,这很简单:每个人都知道他们的用户名,这是一个简单的字符串连接案例来获取用户名。

对于Google Plus,字符串操作是不可能的。

对于Flickr和Facebook,有虚荣网址,但这不是直截了当的。

我不介意在服务器上做任何繁重的工作,但我会问这个问题,以确保我没有错过任何一招。

我的问题是:

  • 给定用户名,有没有办法推导个人资料页面?
  • 我应该寻找哪些API调用?
  • 有没有服务呢?
  • 这是一个真正的问题吗?

2 个答案:

答案 0 :(得分:1)

对于Facebook,从http://graph.facebook.com/<username>获取JSON并查看link

Flickr有一个API调用flickr.people.findByUsername http://www.flickr.com/services/api/flickr.people.findByUsername.html

Google Plus也有API,例如

GET https://www.googleapis.com/plus/v1/people/userId

https://developers.google.com/+/api/

答案 1 :(得分:1)

Google+没有用户名的概念。旧的Google个人资料产品的格式为https://profiles.google.com/{username}。对于具有旧式个人资料并已激活Google+的用户,这将重定向到他们的https://plus.google.com/ID个人资料。也就是说,绝大多数Google+用户都没有这些旧用户名,因此可能不值得尝试这条路线。

获取用户个人资料网址的推荐方法是向用户发送具有https://www.googleapis.com/auth/plus.me范围的OAuth流,然后使用userId“me”调用people.get,并提取个人资料网址回应。