問題タブ [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.
ruby-on-rails - RailsでomniauthのコールバックURIを変更する
Omniauth 2 gem を使用してユーザーを認証したいのですが、コールバック uri に nginx が使用するポート 8082 が含まれており、これが外部に隠されていることが問題です。そのため、認証プロバイダーはユーザーをホスト名:8082 にリダイレクトしようとしますが、これは破棄されます。
http ヘッダーを書き直し、X-Forwarded-Port、Host、Server-Port 属性を変更しようとしました (Rails でリクエスト オブジェクトを確認したところ、Server-Port には 8082 ポート番号のみが含まれていました)、成功しませんでした。アプリケーションのコードを変更したくありません。Web サーバーのレイヤーで解決したいと考えています。
RailsがリダイレクトURLを渡すときにポートが80であると信じる解決策を知っていますか?
ありがとう!
android - Android HttpClient を介して OmniAuth GAFYD 認証済み Web サイトにログインします。
ログインに OmniAuth gem を使用する Ruby on Rails Web サイトにプログラムで接続する必要がある Android アプリを作成しています。認証プロバイダは Google Apps For Your Domain サイトです。
私がする必要があるのは、ログイン情報を GAFYD の URL に渡し、キーまたはトークンを取得し、それを元の Web サイトに何らかの方法で渡すことだと思います。
これを行うために HttpClient を構成する方法を知っている人はいますか?
ruby-on-rails - 3 方向の omniauth 認証関係。設定方法は?
トピックに関する優れたRailscastsビデオに従って、取り組んでいるアプリにfacebookとtwitter認証を実装しました。
これまでのところ、ユーザー モデルをDeviseに接続し、認証モデルを構築して、ユーザーがサインアップしたときに認証プロバイダーを記録しました。次のようになります。
さて、次に必要なことは、これらの omniauth プロバイダーが提供するデータの一部を保存することです。たとえば、Facebook は、ユーザーの性別と Facebook プロファイルの URL を提供します。一方、Twitter への接続は、ユーザーに関するさまざまな情報を提供します。
これにより、1 つは Twitter データ (TwitterProfile) 用、もう 1 つは facebook データ (FacebookProfile) 用の 2 つのテーブルが必要であると思われます。
では、このように認証モデルを拡張する必要がありますか?
私の models/user.rb は次のようになります。
しかし、私の認証モデルは 3 つのテーブルに属することができますか?
認証モデルに余分なスペースがあり、関係が複雑すぎるように見えるため、間違った方向に進んでいるようです。
ruby-on-rails - omniauthによるFacebook認証
Ryan Batesのスクリーンキャストに従って、アプリケーションにomniauthを使用したFacebook認証を追加しています
認証コントローラーの作成機能に問題があります。create関数はFacebookコールバックを処理する必要があります(これは問題ないようです)。
ログファイルのエラーは次のとおりです。
NoMethodError(nil:NilClassの未定義のメソッド `authentications')
エラーは、認証コントローラーの作成関数の次の行を参照しています。
current_user.authentications.find_or_create_by_provider_and_uid(auth ['provider']、auth ['uid'])
何が問題だと思いますか?
ありがとう、
オデッド
ruby-on-rails - 環境に応じてFacebook認証キーを設定するにはどうすればよいですか?
omniauthを使用してFacebook経由で訪問者を認証するRailsアプリがあります。
Facebookにアプリを登録するときは、認証プロセスが完了するとリダイレクトされるコールバックURLを登録する必要があります。
私の本番サイトは開発環境とは異なるサーバーでホストされているため、Facebookに2つの異なるURLを登録する必要があります。これを行うには、ライブバージョンと開発バージョンの2つのアプリを登録します。
もちろん、Railsアプリケーションが使用する必要のある2つのapp_idsと2つのapp_secretsがあります。
開発環境で1セットのキーを使用し、本番環境で別のキーセットを使用するようにOmniAuthを設定するにはどうすればよいですか?
/ config/environmentsディレクトリに次のようにキーを設定しようとしました。
次に/config/initializers/omniauth.rbにあります
しかし、私は得る
開発サーバーを起動しようとすると、omniauth.rbが/ emvironments / *の前にロードされるためだと思いますか?
どうすればこれを設定できますか?
編集:これがより詳細なエラーメッセージです
ruby-on-rails - Omniauth/Devise/Facebook: 認証ルートが認識されない
私はこの問題に7時間取り組んできましたが、まだわかりません。多分あなたの一人が私を助けることができます。
Omniauth を使用する Devise 1.2rc の OAuth 機能を Rails アプリケーションに統合しようとしているだけです。
- 私はDeviseのこのチュートリアルを使用しています:
https://github.com/plataformatec/devise/wiki/OmniAuth%3A-概要
私は彼らがあなたに言うことはすべてやりました...
はい、devise.rb に次の行を追加しました。
config.omniauth :facebook, "APP ID", "APP SECRET"
:omniauthable をユーザー モデルに追加し、チュートリアルで説明されているようにクラス関数も追加しました。
omniauth_callbacks コントローラーとコールバック関数を実装し、routes.rb で omniauth_callbacks コントローラーを指定しました。
「rake middleware」を実行すると、Omniauth ミドルウェアが一覧表示されます。
use OmniAuth::Strategies::Facebook
Devise は Git リポジトリの master ブランチから直接インストールしたので最新です
最新バージョンの Omniauth 1.2.0.beta5 をインストールしました。私のGemfileには次のように書かれています:
gem 'oa-oauth', '0.2.0.beta5', :require => 'omniauth/oauth'
明らかにサーバーを再起動しました
ただし、この URL をリクエストしようとすると、次のようになります。
http://localhost:3000/auth/facebook
it simply says
ActionController::RoutingError (No route matches "/auth/facebook"):
/user/auth/facebook も機能しません。
残念ながら、Omniauth と Devise の gem 全体を分解してコードのすべての行を理解する時間はありません。
ruby-on-rails - OmniAuth プロバイダー設定の取得
Twitterを次のように使用するためのOmniAuthセットアップがあります。
モデルのように、私のアプリの別の場所で Twitter キーとシークレットの OmniAuth 設定を取得するにはどうすればよいですか?
ruby-on-rails - omniauth をミドルウェアとして追加する際の問題
すべて - Rails 2.3.5 と Devise を使用しています。Onmiauth をシステムに統合しようとしています。ミドルウェアとして追加する際に問題があります。gem は、「gem list」によって検証されたとおりにインストールされます。
'use OmniAuth::Strategies::Twitter, 'CONSUMER_KEY', 'CONSUMER_SECRET'' を environment.rb に追加しようとすると、次のエラーが発生します。
`activate' で: ["oa-core-0.2.0", "omniauth-0.2.0"] のラック (~> 1.1、ランタイム) をアクティブ化できません。["actionpack- 2.3.5"、"rails-2.3.5"] (Gem::LoadError)
rake:middleware を実行しましたが、ミドルウェアとしてリストされていません。
何か案は?
ruby - Omniauth (net-ldap には Ruby バージョン >= 1.8.7 が必要です。) インストール エラー?
Ubuntu 8.04.4 に omniauth をインストールしようとしています。
次のエラーが発生し続けます。
エラー: omniauth のインストール中にエラーが発生しました: net-ldap には Ruby バージョン >= 1.8.7 が必要です。
そのため、Ruby1.9 に更新しましたが、それでもエラーは解決しません。なぜこれが起こっているのか分かりますか?ruby1.8.7 はマイナー リリースだと思っていたので、ベスト プラクティスとして Ruby1.9 に移行することをお勧めします。さらに言えば、Ruby1.8.7 のコピーがどこにも見つかりません。
編集:::::::::::::::
gems をパージし、ruby をアンインストールしました。次に、バージョン ruby1.8.7 をコンパイルしてインストールし、今ではうまく動作することがわかりました。
乾杯、
スローなタイプ。
jquery - RailsアプリケーションでjQueryを使用してデータベース値にアクセスする方法
omniauth を使用する Rails アプリケーションが 1 つあります。また、トークンをデータベースに保存します。認証プロセスが完了した後、jQuery を使用して omniauth プロバイダーからデータを取得したいのですが、jQuery スクリプトで @current_user.token などを使用するにはどうすればよいですか?