问题标签 [omniauth]

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 投票
4 回答
20489 浏览

ruby-on-rails - 将omniauth facebook登录变成弹出窗口

我正在使用带有rails的omniauth gem,它在登录用户时效果很好,但是每次它把你带到fb登录页面然后将你重定向回来。我想知道是否有一种方法可以完成大多数页面的操作并在弹出窗口中显示 fb 登录,然后在完成后重新加载父 div。有任何想法吗?

谢谢!

0 投票
3 回答
4615 浏览

ruby-on-rails - Rails:如何为进行重定向的路由编写规范?

我在我的 Rails 项目中使用 Omniauth,我想将“/auth/facebook”隐藏在“/login”路由后面。

其实我写了一个路由:

这实际上有效,即指向的链接login_path将重定向到/auth/facebook.

但是,我如何编写(RSpec)规范来测试这条路线(特别是重定向)?

请注意,这/login不是应用程序中定义的实际操作或方法。

提前致谢!

0 投票
1 回答
701 浏览

ruby-on-rails - 我应该如何使用 Omniauth 等第三方库测试用户注册/登录?

我正在使用 Rails 3.0.3、Rspec2、Cucumber、Capybara

使用 Omniauth gem 时,场景应该如何查找用户注册过程?

我的意思是测试这个库对我来说没有意义,我只想测试我的应用程序角度的整个用户注册过程:

  • 打开我的 root_path #我的应用
  • 点击 /auth/facebook #我的应用
  • 这是 OMNIAUTH 的一部分 # 不是我的应用,不需要测试
  • 访问 /auth/facebook/callback # 我的应用
  • 读取用户信息,比较#我的应用

测试它的好习惯是什么?

0 投票
2 回答
5388 浏览

ruby-on-rails - Rails 3 中的用户身份验证示例,使用 Devise、OmniAuth、Mongoid 和 JSON 响应

我使用以下示例将 Devise 和 OmniAuth 与我的 Mongoid ORM 设置集成:

https://github.com/plataformatec/devise/wiki/Example-Applications

我的客户端代码主要是 JavaScript (ExtJS),并且依赖 JSON 进行所有通信。我不使用 Rails 模板。我希望构建一个多提供者身份验证模型,主要使用用户/通行证、Facebook 和 Twitter。我很难将关于我的应用程序堆栈的完整用户身份验证流程放在一起。

我正在寻找一个使用 JSON 响应标准身份验证操作的示例,而不是重定向,并提供与使用 Mongoid 的 OmniAuth 的集成。除了上述示例之外,我还阅读了 Ryan Bates 的关于 Devise 和 OmniAuth 的 Railscast。到目前为止,我处理过的每个示例要么是 ActiveRecord,要么是面向 Rails 模板的。任何指针表示赞赏!

0 投票
3 回答
12377 浏览

ruby-on-rails - 为 OAuth (Ruby) 创建签名和随机数

我希望从我的应用程序访问 SmugMug 的 API 以获取用户的相册和图像(用户已通过 ruby​​ 的 OmniAuth 进行身份验证)。

根据SmugMug 的 OAuth API,OAuth 需要六个参数。

我可以使用 OmniAuth 获取令牌,并且时间戳应该很容易(Time.now.to_i 对吗?)。有两件事我不知道如何生成——oauth_nonce 和 oauth_signature。

根据 oauth 文档,我通过时间戳生成随机数,但我该怎么做呢?它是否需要一定的长度并限制为某些字符?

当然还有签名。如何使用 ruby​​ 生成 HMAC-SHA1 sig?我知道 oauth gem 可以做到,但我宁愿自己生成它以与 OmniAuth 一起使用。查看代码,我无法解读 oauth gem 如何生成 sig。

感谢您的任何帮助。

0 投票
5 回答
21048 浏览

ruby-on-rails - 本地主机上的 Omniauth Facebook 身份验证

我正在尝试按照此Railscast中的描述设置 Omniauth 。虽然它适用于 Twitter,但我无法让它适用于 Facebook。我还将“ http://localhost:3000 ”设置为 siteurl,将“localhost”设置为域,但仍然在浏览器中看到以下错误消息:

你们中有人对如何解决这个问题有任何建议吗?提前致谢。

0 投票
2 回答
4369 浏览

ruby-on-rails - Twitter API 通过 OmniAuth on Rails 3, Net::HTTPUnauthorized hell

我遵循了 Simple OmniAuth 教程 ( http://asciicasts.com/episodes/241-simple-omniauth ),并且可以使用我的 Twitter 帐户登录该服务。现在我想从应用程序访问 twitter API 和推文。我的代码如下:

渲染线不做任何事情。此外,如果我添加

在我看来,我得到

#<Net::HTTPUnauthorized:0x2ac5149e94f0>

尽管如此,我仍然可以从 Twitter 帐户中获取用户名。

我的用户模型如下:

我究竟做错了什么?

0 投票
2 回答
4178 浏览

ruby-on-rails - Rails facebook 应用程序返回 422“你想要的更改被拒绝”错误

我的脸书今天刚刚获批。但是,当我单击“转到应用程序”时,它返回 Rail 422“您想要的更改被拒绝。错误”我将 Canvas URL 设置为我的站点 URL,并且我正在使用 Omniauth,所以我只是想知道我错过了什么.

0 投票
4 回答
3093 浏览

ruby-on-rails - OmniAuth:防范同一用户的多个帐户

我有几个希望与 OmniAuth 集成的 Rails 应用程序,但是我遇到了一个概念问题,我想先弄清楚。考虑以下场景:

  1. 您的应用程序 Foo 支持通过 Twitter 和 Facebook 进行 OmniAuth 登录。
  2. 乔来到您的网站并通过他的 Twitter 帐户登录。这会在 Foo 上创建一个新用户并将其与这个新的 Twitter 授权相关联。
  3. Joe 从 Foo 注销,并在六个月内忘记了该站点。
  4. Joe 回到 Foo,不记得他之前曾使用 Twitter 登录过。
  5. 乔使用 Facebook 登录。由于他尚未通过其原始 Twitter 授权登录,因此无法检测到他实际上是同一个 Joe,因此创建了一个新帐户。
  6. Joe 发现了他的旧帐户,现在他很沮丧,因为他的旧内容与这个旧帐户相关联,而且他无法交替使用 Twitter 和 Facebook 登录。

由于 Twitter 不向 Foo 提供电子邮件地址,因此没有通用标识符可用于检测这两个 Joe 是同一个 Joe。您可以决定仅支持向您提供用户电子邮件地址的提供商,但如果用户在不同提供商的不同电子邮件地址上注册,这将无济于事。

我能想到的唯一其他解决方案是为用户提供一些合并两个现有帐户的方法。与使用 OmniAuth 时其他一切相对容易相比,这是一个令人头疼的问题。如果这是唯一的解决方案,是否有人遇到过指南/教程,显示了如何完成此操作的示例?鉴于 OmniAuth 的流行,我很惊讶这个问题没有得到更多的关注。

谢谢!

0 投票
1 回答
1231 浏览

ruby-on-rails - 我应该使用什么样的数据模型来存储历史数据?

我正在使用 RoR 来测试设计和omniauth 集成。我现在有一个模型,其中包含一个用户以及属于用户的 FacebookUser 和 TwitterUser。

我现在可以将来自 Graph API 或 Twitter API 的数据存储在我的对象中,但我的问题是关于历史数据。如果我想做一种 twittercounter.com 并存储关注者、推文等的历史记录。这样做的最佳做法是什么?

什么样的数据模型?我应该多久更新一次数据以及我应该保留哪些部分?

谢谢你的帮助。