2

我正在尝试使用以下代码通过 Gem Koala Facebook API 获取用户信息

@graph = Koala::Facebook::API.new(auth_hash.credentials.token) profile = @graph.get_object("me") user.update( url: auth_hash.extra.raw_info.id, email: auth_hash.extra.raw_info.email, friends: @graph.get_connections("me", "friends"), birthday: @graph.get_object("me", "birthday") )

friends: @graph.get_connections("me", "friends")工作得很好,我会得到一个朋友的名单。

不过birthday: @graph.get_object("me", "birthday")会给我type: OAuthException, code: 2500, message: Unknown path components: /birthday [HTTP 400]

返回诸如 之类的数组的东西可以likes正常photos工作。

但是诸如last_name,name之类的字符串first_name会给我同样的错误。

我能做些什么来解决这个问题?还有什么我可以输入的,而不仅仅是birthday

4

3 回答 3

5

虽然它没有很好的文档记录,但我阅读了 gem 的代码。

在这里它解释了如何做你想做的事。

你可以这样做:

Koala::Facebook::API.new(ACCESS_TOKEN).get_object(:me, { fields: [:birthday]})

这将返回用户的生日和 id。

于 2016-08-18T12:52:27.593 回答
1

我认为应该这样做!

rest = Koala::Facebook::API.new(access_token)
rest.get_object("me?fields=birthday")
于 2016-01-26T16:36:43.110 回答
1

birthday不是端点friends,它只是用户表中的一个字段。和相同name:_first_namelast_name

/me?fields=name,birthday,first_name,last_name

我对 Ruby 和考拉一无所知,但我假设您可以将 fields 参数添加为对象 - 这是文档中的样子:

@graph.get_object("me", {}, api_version: "v2.0")

来源:https ://github.com/arsduo/koala

于 2016-01-15T10:53:15.763 回答