0

ユーザーの認証にeventbrite omniauthを使用しています。https://github.com/k504866430/omniauth-eventbriteを参照して、宝石を含め、ファイルomniauth.rbファイルを次のように作成しました。

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :eventbrite, ENV['EVENTBRITE_CLIENT_ID'], ENV['EVENTBRITE_CLIENT_SECRET']
end

各イベントのショー ページには、Authenticate with eventbriteへのリンクがあります。

イベント/24

 = link_to "Authenticate with Eventbrite", "/auth/eventbrite"

ユーザーがアクセスを許可すると、コールバック URL が同じイベント ページにリダイレクトされるようにします。

したがって、アプリケーションが同じイベント ページに戻ることができるように paramsでevent_idを渡す方法と、 routes.rbファイルでコールバック URLを定義する方法を知る必要があります。

4

1 に答える 1

1

Eventbrite のOAuth2.0 実装では、OAuth コールバック URL をクエリ文字列パラメーターとして定義できません。この callback_url は、 Eventbrite アプリケーション キーの「redirect_uri」設定を構成することによってのみ定義できます。

カスタム クエリ文字列パラメーター (event_id など) のパススルーもサポートされていません。さらに、ユーザーがサイトに戻ってきた後に、少しフォローアップ作業を行う必要があります。

ユーザーがウェブサイトに戻った後にリダイレクトする必要がある場合は、ユーザーのブラウザー セッションまたは別のデータ ストアに「redirect_url」(および場合によっては event_id も) を格納することを検討します。
(redirect_uri に一致する) 単一のランディング ページを設定すると、ユーザーを選択した URL に送信する前に OAuth2.0 ハンドシェイクを完了することができます。

于 2012-09-11T21:49:35.723 に答える