问题标签 [koala-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
130 浏览

ruby-on-rails - rails koala gem - 获取 API url 请求

我正在使用 Rails 4,使用 Koala gem 从 Graph API 检索用户图片。

我可以收到宝石来接收图片:

但我想保存考拉正在使用的 url(我更喜欢用户调用 url,而不是我)。我假设 gem 调用: https ://graph.facebook.com/facebook_id/picture

但我不希望它被硬编码。有没有办法从 gem 中提取 url?谢谢

0 投票
0 回答
274 浏览

ruby-on-rails - Koala gem get_object 返回 GraphMethodException

我正在使用 Koala gem 获取 Facebook 帖子上的指标(喜欢、评论和分享)。我真的好几个月没碰考拉代码了,但突然停止工作了。我能够获得喜欢和评论,但不能获得分享。我检查了 gem 的文档以及 GitHub 上的问题,但没有看到与我的问题相关的任何内容。不确定是我的代码还是 gem 还是对 Facebook API 的更改。

我有以下方法,该方法由另一个方法调用,该方法负责更新帖子上的所有指标。

以下是方法参数的一些示例值:

当我使用这些输入运行上述方法时,它返回此错误:

我也尝试过以下组合,但均未成功:

参考 Graph API 文档并没有让我对这个问题有任何新的见解。

正如我之前所说,我已经好几个月没有碰过上面的代码了,但它最近才停止工作。我最近确实将我的 Rails 应用程序从 4.06 升级到了 4.2.5.1。我还从 Ruby 2.0.0 升级到了 2.3.0。不过我没有升级考拉宝石。我已经在运行 2.2.0(最新)。

0 投票
1 回答
237 浏览

ruby-on-rails - 如何使用 Graph API 将 Facebook 主页作为测试用户提及

我了解,为了让我在提交 Facebook 页面以供批准之前提及它,我必须将其作为我管理的页面发布,标记我管理的页面并使用我管理的应用程序 - 否则,不会应用标签。

问题在于测试用户不是应用管理员。我知道我可以使用我的个人帐户,因为我是应用程序的管理员,但我想避免创建实际的 Facebook 帐户/页面来测试此功能。我想知道如何/是否可以使用测试用户帐户测试页面提及。

这个问题让我意识到我以错误的方式处理它,但仍然给我留下了我现在要问的问题。先感谢您!

0 投票
1 回答
221 浏览

ruby-on-rails - Ruby on Rails 无需用户登录即可查看 Facebook 事件

我正在整理一个网站,该网站使用 Ruby on Rails 和 Koala 显示 Facebook 事件。

如果我执行以下操作,我可以很好地显示一个事件:

但是一旦我将第一行更改为:

即,如果没有 auth_token,我会收到错误--> 类型:OAuthException,代码:104,消息:请求此资源需要访问令牌。[HTTP 400]

我不希望用户必须登录才能查看事件。我知道我不必登录 Facebook 即可查看活动,所以我确信必须有无需用户登录即可获取活动的方法。有什么想法吗?

0 投票
1 回答
786 浏览

ruby-on-rails - 使用 Koala 和 Rails 获取 App 用户访问令牌

我有一个 Facebook 应用程序,我可以从这个 url 获取它的用户令牌和应用程序令牌:https://developers.facebook.com/tools/access_token/ 在我的 Ruby on Rails 应用程序中,我使用以下代码获取事件信息:

这里的问题是应用程序用户令牌过期。我知道这就是为什么它不应该直接放在代码中的原因,但到目前为止,出于测试目的,它已经足够了。然而,这显然不是一个好的长期策略。

如何动态获取此用户令牌?它是否类似于为实际用户而不是应用程序获取用户令牌?

0 投票
1 回答
1353 浏览

ruby-on-rails - 使用 Koala 和 Ruby on Rails 获取 Facebook 应用访问令牌

一天以来,我一直在尝试使用我的 RoR 应用程序连接到 Facebook API,但没有任何运气。我正在使用 Ruby on Rails 和 Koala。

如果我尝试如下连接:

那么就没有问题了。(用户令牌是从https://developers.facebook.com/tools/access_token/获得的)

问题是用户令牌过期。我知道有一种方法可以扩展应用程序用户令牌,但我不想诉诸于此。

相反,我正在尝试对我的应用程序进行身份验证以获得一个应用程序访问令牌,我可以使用它来代替用户令牌(根据https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens。请注意,这是指 App Access Token,而不是第一个链接中提到的 App Token)。

为了获得应用程序访问令牌,我遵循了一个教程并在我的控制器中提供了此代码:

在我的 routes.rb 我有:

这纯粹是为了测试回调是否有效。

我的意图是做类似的事情:

但是我得到一个错误:EventsController#index 中的 NoMethodError 未定义方法 `url_for_oauth_code' for nil:NilClass

请注意,我对为用户获取访问令牌不感兴趣;我想要一个用于我的应用程序,以便我可以连接到 api a la:

任何帮助将不胜感激。

0 投票
1 回答
400 浏览

facebook - 用于字段参数中嵌套属性的 Koala ruby​​ gem get_object 语法

Facebook API 支持通过以下方式在响应中选择嵌套对象的选定字段:

参考:https ://developers.facebook.com/docs/graph-api/using-graph-api#reading - 部分:制作嵌套请求

使用Koala Ruby Gem 向 Facebook API 发送请求时,指定嵌套字段的语法是什么?

在此 wiki 页面https://github.com/arsduo/koala/wiki/Graph-API#getting-public-data上给出了以下示例:

因此,为了添加 Facebook API 端点支持的字段,我们传入一个包含fields键的哈希和一个支持字段名称的数组,例如['message', 'id', 'from'].

如果任何字段表示一个具有自己属性的对象,例如页面的 Rating 端点返回OpenGraphRating节点列表并且 OpenGraphRating 对象具有以下属性open_graph_story,即对象,那么我们如何在使用时指定嵌套属性考拉的fields语法?

直接使用端点时,如下所示:

0 投票
1 回答
132 浏览

ruby - Refreshing user facebook tokens

I have an application in rails which is heavily based on facebook oauth2. At a glance - user signs in with FB connect and can list it's pages (and do some stuff with that data but that's not important right now. Let's just focus on signing-in and getting pages list).

After a sign-in, i'm saving user access_token and expires_at in the db. Then, each time i need to make a request to facebook api as a user (to obtain his pages list), i'm checking if expires_at is not past and if it is, i'm renewing user token using a following snippet:

This works most of the times but, from time to time, my code throws:

type: OAuthException, code: 190, error_subcode: 460, message: Error validating access token: Session does not match current stored session. This may be because the user changed the password since the time the session was created or Facebook has changed the session for security reasons. [HTTP 400]

in line with exchange_access_token_info.

That error is thrown fo my own user and i can say that i didn't changed the password so i'm not sure what's that caused by nor how can i deal with refreshing the tokens by backend in a bullet-proof way.

Any help much appreciated!

0 投票
1 回答
410 浏览

ruby-on-rails - 如何使用 Koala gem 取消对用户 Facebook 权限的授权

我正在使用考拉来处理 FB 电话。一切正常,除了我不知道如何取消用户的 FB 权限。

等效的 REST 调用将是:

Koala wiki 表明所有 REST 调用都通过以下方式支持:

但这并不能告诉我太多。

我更喜欢使用考拉,因为我启用了应用程序秘密安全性,并且为普通的 FB REST 调用生成 app_secret_proof 是一个主要的麻烦。考拉透明地处理它。

0 投票
0 回答
1126 浏览

ruby-on-rails - Facebook opengraph (#2) 服务暂时不可用

我有一个应用程序,用户可以在上面发布他们的节目。我想添加 rsvp_events 以便用户可以在点击“继续”按钮时在 Facebook 上发布他们的活动。我已经设置了一切,一切似乎都很好,但是当我尝试使用考拉在 Facebook 上发布活动时,我收到以下错误,

}

我正在使用考拉宝石,我正在这样做,

任何解决方案?