Tag: omn​​iauth

显示来自Rails应用程序的Twitter订阅源

我已经能够让用户通过OmniAuth登录Twitter(我遵循Railscast#235-6并制作了一个简单的应用程序)。 现在我正在尝试显示登录用户的Twitter提要。 谁能告诉我这是怎么做到的? 我如何初始化Twitter? 如何传入登录用户的用户名和密码? 我是Rails的新手,所以如果我确切地知道放置代码的位置会很有帮助。 谢谢

为新用户设计Omniauth“encrypted_pa​​ssword可能不为NULL”

我正在使用Devise与Omniauth让用户通过Facebook登录我的应用程序。 我使用Railscast教程来启动并运行它。 如果用户已经是我的网站的成员通过Facebook进行身份validation工作正常。 在使用facebookvalidation新用户时会出现此问题。 当它为我的用户模型创建一个新用户时,我得到“users.encrypted_pa​​ssword可能不是NULL”错误。 我无法弄清楚如何从Facebook信息将密码传递给用户模型。 这就是我所拥有的: authentations_controller.rb class AuthenticationsController omniauth[‘provider’], :uid => omniauth[‘uid’]) flash[:notice] = “Authentication successful.” redirect_to authentications_url else user = User.new user.apply_omniauth(omniauth) if user.save flash[:notice] = “Signed in successfully.” sign_in_and_redirect(:user, user) else session[:omniauth] = omniauth.except(‘extra’) redirect_to new_user_registration_url end end end user.rb def apply_omniauth(omniauth) self.email = omniauth[‘user_info’][’email’] if email.blank? authentications.build(:provider => omniauth[‘provider’], :uid […]

在Rails 3中为OmniAuth创建命名路由

在看过Ryan优秀的Railcast Simple OmniAuth后 ,我设法在我的应用程序中实现身份validation。 一切都很好,但在我看来,我的链接看起来像这样: 我想知道是否有一种优雅的方法来创建一个命名路由来替换它: 要么: OmniAuth已经处理了那些路由……在我的routes.rb文件中,我只有回调和注销的东西: match ‘/signin/:provider/callback’ => ‘sessions#create’ match ‘/signout’ => ‘sessions#destroy’, :as => :signout 所以我不知道在哪里可以创建那些命名路线。 任何帮助将不胜感激。 谢谢。

LinkedIn photo_urls或picture-urls ::(原创)未被退回

所以我在我的Rails 5应用程序中使用omniauth和devise进行LinkedIn身份validation。 omniauth-linkedin-oauth2 (0.2.5) devise (4.4.1) 在大多数情况下,一切都很好用,用户可以使用LinkedIn进行注册和身份validation。 但是,“auth.info.image”中返回的默认图像是50×50,这个图像太小了。 我已经对此做了很多阅读,建议的方法是将“picture-urls ::( original)”添加到设计字段列表中。 这与我在文档中看到的一致( https://developer.linkedin.com/docs/fields/basic-profile )。 然而,这似乎不起作用,我想知道是否有一个错误或这是否是某种过时的信息。 我的devise.rb omniauth配置看起来像: config.omniauth Rails.application.config.omniauth, app_key, app_secret], scope: ‘r_basicprofile r_emailaddress’, fields: %w(id email-address first-name last-name picture-url picture-urls::(original)) 即使在指定了这些字段之后,图片url中也不会返回任何值。 self.remote_photo_url = auth.extra.raw_info.pictureUrls[‘values’].first 我已经检查了返回的数据,并且无处可寻。 不知道我可能会遗漏什么,但任何建议将不胜感激!

从facebook中获取用户个人资料大图片,并在设计2.0中使用omniauth

我想从Facebook获取用户个人资料大图或普通图片。 现在我使用以下代码从用户个人资料图片中获取方形版本: :image => access_token.info.image # http://graph.facebook.com/id/picture?type=square 我怎样才能获得大版或普通版? 或者和应用程序,我如何在这个url中替换最后一个字,大而不是方形…… 非常感谢你!

使用google_oauth2获取“错误:redirect_uri_mismatch”

url似乎正确(昨天上次更新): 文件也是: omn​​iauth.rb: provider :google_oauth2, ‘MY_CLIENT_ID.apps.googleusercontent.com’, ‘MY_CLIENT_SECRET’, :scope => ‘https://mail.google.com/mail/feed/atom/’ Error: redirect_uri_mismatch The redirect URI in the request: http://localhost:3000/auth/google_oauth2/callback did not match a registered redirect URI header.html.erb routes.rb中: match ‘/auth/:provider/callback’, to: ‘sessions#omniauth_create’ 但是我得到了这个: > Error: redirect_uri_mismatch The redirect URI in the request: > http://localhost:3000/auth/google_oauth2/callback did not match a > registered redirect URI (Twitter和Facebook OmniAuth工作正常) 不确定是什么问题。 […]

路由错误未初始化的常量用户

我是一个铁杆新手…我正在尝试设置登录Facebook的演示应用程序。 我正在使用OmniAuth并遵循本教程 https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview 重定向到fB时出现此错误: Routing Error: uninitialized constant Users Try running rake routes for more information on available routes. 环境 Windows 7 Rails version :3.2.9.rc2 omniauth-1.1.1 devise-2.1.2 我的routes.rb看起来像这样: root :to => ‘static_pages#home’ resources :users get “static_pages/home” match ‘/auth/facebook’ => ‘omniauth#passthru’ match ‘/users/auth/facebook’ => ‘users/omniauth_callbacks#passthru’ devise_for :users, :controllers => { :omniauth_callbacks => “users/omniauth_callbacks” } , :strategy_class […]

Rails 3 – 设计:如何在编辑注册时跳过’current_password’?

我用我的设计模型实现了omniauth,所以我可以使用其他服务进行身份validation。 我的模型不再需要密码,因为用户可以使用twitter,facebook进行身份validation… 一切正常,但是,当用户尝试编辑其注册时,设计会跳过该过程,因为用户没有通知’current_password’(现在在某些情况下不存在)。 我创建了一个注册控制器来覆盖一个设备: class RegistrationsController < Devise::RegistrationsController def update super end end 但是我没有找到任何关于如何跳过密码validation的文档,我怎样才能在更新操作中执行此操作?

如何在设计中使用http身份validation,并使用可选的omniauth令牌作为身份validation令牌

我们有一个rails应用程序设置,它使用devise&omniauth允许通过facebook身份validation登录。 我们还有一个移动应用程序,当前正在使用http身份validation通过传递用户名和密码或传入http身份validation令牌来登录rails应用程序。 到目前为止,这一切都很有效。 移动应用程序还具有与Facebook本身进行身份validation的能力,并直接在自己和Facebook之间接收用户facebook令牌。 我想弥合这个差距,以便如果用户通过Facebook从移动应用程序登录并拥有他们的Facebook令牌,允许将facebook令牌用作rails应用程序上的身份validation,就好像他们已经从facebook通过浏览器。 最终结果是移动应用程序可以通过以下方式登录用户: 1)用户名/密码或2)http认证令牌或3)omniauth(facebook)令牌 此外,在3)的情况下,如果用户尚未存在于rails应用程序上,则需要创建用户 – 现在已经使用浏览器端身份validation执行此操作,因此可能无需执行任何操作。 如何在设计构造中最好地实现这一目标?

Omniauth-facebook哈希没有显示Facebook’用户名’字段,使用rails 3

我已经设置了我的rails 3应用程序以使用omniauth-facebook,一切正常但是当我将omniauth hash看作yaml时没有’nickname’字段,我可以得到’name’和’email’但我的validation无法创建用户,因为我无法获取应用程序用户名要求的昵称。 我已经在“设置”下仔细检查了我的Facebook帐户,并显示了我的用户名。 任何想法为什么会发生这种情况? 谢谢您的帮助。 这是我的omniauth哈希的一个例子,我出于隐私原因放置了’X’: — !ruby/hash:OmniAuth::AuthHash provider: facebook uid: ‘XXXXXXXXXXXXX’ info: !ruby/hash:OmniAuth::AuthHash::InfoHash email: XXXX@XXXX.XX name: XXXX XXXX first_name: XXXX last_name: XXXX image: http://graph.facebook.com/XXXXXXXXXXXXX/picture urls: !ruby/hash:OmniAuth::AuthHash Facebook: https://www.facebook.com/app_scoped_user_id/XXXXXXXXXXXXX/ verified: true credentials: !ruby/hash:OmniAuth::AuthHash token: ACCESS_TOKEN expires_at: 1406357169 expires: true extra: !ruby/hash:OmniAuth::AuthHash raw_info: !ruby/hash:OmniAuth::AuthHash id: ‘XXXXXXXXXXXXXXX’ email: XXXX@XXXX.XX first_name: XXXX gender: male last_name: XXXX link: […]