問題タブ [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 - omn​​iauthfacebookログインをポップアップに変える

私はrailsでomniauthgemを使用しており、ユーザーのログインでうまく機能しますが、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 をクリック # my app
  • これは OMNIAUTH の一部です # 私のアプリではありません。テストは必要ありません
  • アクセス /auth/facebook/callback # 私のアプリ
  • ユーザー情報を読み取り、 # 私のアプリを比較

それをテストするための良い習慣は何ですか?

0 投票する
2 に答える
5388 参照

ruby-on-rails - Devise、OmniAuth、Mongoid、JSON応答を使用したRails3のユーザー認証の例

次の例を使用して、DeviseとOmniAuthをMongoidORMセットアップと統合しました。

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

私のクライアントコードは主にJavaScript(ExtJS)であり、すべての通信をJSONに依存しています。Railsテンプレートは使用していません。主にユーザー/パス、Facebook、Twitterを使用して、マルチプロバイダー認証モデルを構築したいと考えています。アプリケーションスタックに関して、完全なユーザー認証フローをまとめるのに問題があります。

リダイレクトの代わりに標準の認証アクションへのJSON応答を使用し、Mongoidを使用するOmniAuthとの統合を提供する例を探しています。上記の例に加えて、DeviseとOmniAuthに関するRyanBatesのRailscastを確認しました。私がこれまでに取り組んできたすべての例は、ActiveRecordまたはRailsテンプレート指向のいずれかです。どんなポインタでも大歓迎です!

0 投票する
3 に答える
12377 参照

ruby-on-rails - OAuth の署名とノンスの作成 (Ruby)

アプリケーションから SmugMug の API にアクセスして、ユーザーのアルバムと画像を取得しようとしています (ユーザーは ruby​​ の OmniAuth によって認証されています)。

SmugMug の OAuth APIによると、OAuth には 6 つのパラメーターが必要です。

OmniAuth でトークンを取得でき、タイムスタンプは簡単なはずです (Time.now.to_i ですよね?)。生成方法がわからないものが 2 つあります。oauth_nonce と oauth_signature です。

oauth docs によると、タイムスタンプを介して nonce を生成しますが、どのように正確に行うのでしょうか? 特定の長さで、特定の文字に制限する必要がありますか?

もちろんサインも。ruby で HMAC-SHA1 sig を生成するにはどうすればよいですか? oauth gem でできることは知っていますが、OmniAuth で使用するために自分で生成したいと思います。コードを見ると、oauth gem が sig を生成する方法を解読するのに苦労しています。

助けてくれてありがとう。

0 投票する
5 に答える
21048 参照

ruby-on-rails - ローカルホストでのOmniauthFacebook認証

このRailscastで説明されているようにOmniauthを設定しようとしています。Twitterで動作しますが、Facebookで動作させることができません。また、「http:// localhost:3000」をsiteurlとして、「localhost」をドメインとして設定しましたが、ブラウザに次のエラーメッセージが表示されます。

これを修正する方法について誰か提案がありますか?前もって感謝します。

0 投票する
2 に答える
4369 参照

ruby-on-rails - Rails 3 の OmniAuth 経由の Twitter API、Net::HTTPUnauthorized 地獄

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「必要な変更は拒否されました」というエラーを返す

私のFacebookは今日承認されました。ただし、「アプリに移動」をクリックすると、Rail 422「必要な変更が拒否されました。エラー」が返されますキャンバスの URL をサイトの URL に設定し、Omniauth を使用しているので、何を見逃したのか疑問に思っています。 .

0 投票する
4 に答える
3093 参照

ruby-on-rails - OmniAuth: 同じユーザーの複数のアカウントに対する保護

OmniAuth との統合を検討している Rails アプリがいくつかありますが、最初に把握したい概念上の問題があります。次のシナリオを検討してください。

  1. アプリケーション Foo は、Twitter と Facebook を介した OmniAuth ログインをサポートしています。
  2. ジョーはあなたのサイトにアクセスし、彼の Twitter アカウントを介してログインします。これにより、Foo に新しいユーザーが作成され、この新しい Twitter 承認に関連付けられます。
  3. Joe は Foo からログアウトし、サイトのことを 6 か月間忘れます。
  4. Joe は、以前に Twitter でログインしたことを思い出さずに Foo に戻ります。
  5. Joe は Facebook でログインします。彼は元の Twitter 認証でまだログインしていないため、彼が実際に同じ Joe であることを検出する方法がなく、新しいアカウントが作成されます。
  6. ジョーは自分の古いアカウントを発見し、以前のコンテンツがこの古いアカウントに関連付けられていること、および Twitter と Facebook を交互にログインできないことに不満を感じています。

Twitter は Foo に電子メール アドレスを提供しないため、2 人の Joe が同じ Joe であることを検出するために使用する汎用識別子はありません。ユーザーの電子メール アドレスを提供するプロバイダーのみをサポートすることもできますが、ユーザーが別のプロバイダーで別の電子メール アドレスを使用して登録している場合、これは役に立ちません。

私が考えることができる他の唯一の解決策は、ユーザーに 2 つの既存のアカウントをマージする方法を提供することです。これは、OmniAuth を使用する場合に他のすべてが比較的簡単であることに比べて、大きな頭痛の種です。これが唯一の解決策である場合、これがどのように行われるかの例を示すガイド/チュートリアルに出くわした人はいますか? OmniAuth の人気を考えると、この問題があまり注目されていないことに驚いています。

ありがとう!

0 投票する
1 に答える
1231 参照

ruby-on-rails - 履歴データを保存するには、どのようなデータ モデルを使用すればよいですか?

私は RoR をハッキングして、devise と omniauth の統合をテストしています。User と、User に属する FacebookUser および TwitterUser を持つモデルができました。

Graph API または Twitter API からのデータをオブジェクトに保存できるようになりましたが、私の質問は履歴データについてです。ある種の twittercounter.com を実行し、フォロワー、ツイートなどの履歴を保存したい場合、それを行うためのベストプラクティスは何ですか?

どのようなデータモデルですか? どのくらいの頻度でデータを更新し、どの部分を保持する必要がありますか?

ご協力いただきありがとうございます。