1

eventbrite でユーザーを認証しようとしているアプリケーションを作成しています。ドキュメントを参照して、アプリケーションに JavaScript を含めると、アプリでCONNECT WITH EVENTBRITEリンクが生成されます。

このボタンをクリックすると、次の URL に移動します。

https://www.eventbrite.com/oauth/authorize?response_type=token&client_id=xxxxxxxxxxxx

(ここで、クライアント ID は、私のアプリケーションの eventbrite アプリ キーです。)

ユーザーがアプリケーションにevenbriteアカウントへのアクセスを許可すると、次のURLでアプリケーションにリダイレクトされます:

http://localhost:3000/#token_type=Bearer&access_token=yyyyyyyyyyyyyyyyyyyy

ユーザーの情報にアクセスするための URL のアクセス トークンが必要ですURIを使用して url を解析しようとしました。しかし、私はそうするのが最善の方法だとは思いませんでした..上記のURLからaccess_tokenを抽出するための良い解決策を教えてください。

4

1 に答える 1

1

サーバー側 OAuth2.0の場合、最初の URL で response_type=code を使用します。

https://www.eventbrite.com/oauth/authorize?response_type=code&client_id=xxxxxxxxxxxx

access_code を見つけるには、クエリ文字列から「code」パラメーターを取得します。

require 'uri'
uri = URI("http://localhost:3000/?code=XVYMCZOHM4D2GBXTJZG6")
access_code = uri.query.split('&')[0].split('=')[1]

次のステップは、サーバー側の POST をhttps://www.eventbrite.com/oauth/tokenに作成し、一時的な access_code、client_secret、およびその他の詳細 (ここで概説: http://developer.eventbrite. com/doc/authentication/oauth2/ )

code=THE_USERS_AUTH_CODE&client_secret=YOUR_CLIENT_SECRET&client_id=YOUR_API_KEY&grant_type=authorization_code

ユーザーの access_token は、POST 応答で使用できる必要があります。

于 2012-09-11T17:40:26.320 に答える