使用OAuth2.0的Rails的Eventbrite在线上售票认证(Eventbrite auth

2019-10-17 05:08发布

IAM创建哪里我想authentivate与Eventbrite在线上售票用户的应用程序。 随着参考文档我包括我的应用程序的JavaScript和它产生在我的应用程序一个CONNECT与Eventbrite在线上售票链接。

当我点击这个按钮,它需要我的网址:

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

(这里的客户ID是我的应用程序的Eventbrite在线上售票应用程序键)。

当用户允许访问重定向我到我的以下网址的应用evenbrite帐户的应用:

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

我想在URL的访问令牌访问用户的信息。 我尝试使用URI来解析URL。 但我没有发现这样做的最好方式..谁能告诉我一个很好的解决方案,从上面的URL中提取的access_token。

Answer 1:

对于服务器端的OAuth2.0 ,我会使用RESPONSE_TYPE =代码在你最初的网址:

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

为了找到access_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 /认证/的oauth2 / )

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

用户应的access_token是在POST响应可用。



文章来源: Eventbrite authentication using OAuth2.0 Rails