带解析的条纹连接
Stripe Connect With Parse
我已经有了一个工作的条纹连接应用程序,但现在我无法解决如何使用 Parse 实现条纹连接的问题,而不是 Devise。
这是我已有的:
class OmniauthCallbacksController < Devise::OmniauthCallbacksController
def stripe_connect
@user = current_user
if @user.update_attributes({
provider: request.env["omniauth.auth"].provider,
uid: request.env["omniauth.auth"].uid,
access_code: request.env["omniauth.auth"].credentials.token,
publishable_key: request.env["omniauth.auth"].info.stripe_publishable_key
})
# anything else you need to do in response..
sign_in_and_redirect @user, :event => :authentication
set_flash_message(:notice, :success, :kind => "Stripe") if is_navigational_format?
else
session["devise.stripe_connect_data"] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
end
end
还有我的路线:
devise_for :users, :controllers => { :omniauth_callbacks => "omniauth_callbacks" }
我只想知道如何操作它,以便我可以将它与 Parse RestApi 一起使用,谢谢。
您不需要删除设备,因为它正在为您的站点处理用户身份验证。另一方面,解析处理您的数据(基本上是保存和恢复数据)。
在您的 #stripe_connect
方法中,您似乎成功接收了有关用户的数据,用户登录后 Stripe 会为您提供这些数据。
如果您想保存该数据,请了解如何使用 Objects API。
如果您想将信息保存在自己的数据库中(而不是 Parse),只需忘记 Parse,您的代码就可以了。
UPD。如果你正在使用omniauth-stripe-connect,你可以去掉Devise(因为你不需要它广泛的功能,只需要stripe connect)。
按照文档中的说明,将以下内容添加到 config/initializers/omniauth.rb
:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :stripe_connect, ENV['STRIPE_CONNECT_CLIENT_ID'], ENV['STRIPE_SECRET']
end
OmniAuth.config.logger = Rails.logger
然后添加到你的routes.rb
:
get '/auth/:provider/callback', to: 'sessions#create'
然后将您的控制器重命名为 SessionsController
,将您的 stripe_connect
方法重命名为 create
。您将可以访问相同的 request.env['omniauth.auth']
哈希。
我已经有了一个工作的条纹连接应用程序,但现在我无法解决如何使用 Parse 实现条纹连接的问题,而不是 Devise。
这是我已有的:
class OmniauthCallbacksController < Devise::OmniauthCallbacksController
def stripe_connect
@user = current_user
if @user.update_attributes({
provider: request.env["omniauth.auth"].provider,
uid: request.env["omniauth.auth"].uid,
access_code: request.env["omniauth.auth"].credentials.token,
publishable_key: request.env["omniauth.auth"].info.stripe_publishable_key
})
# anything else you need to do in response..
sign_in_and_redirect @user, :event => :authentication
set_flash_message(:notice, :success, :kind => "Stripe") if is_navigational_format?
else
session["devise.stripe_connect_data"] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
end
end
还有我的路线:
devise_for :users, :controllers => { :omniauth_callbacks => "omniauth_callbacks" }
我只想知道如何操作它,以便我可以将它与 Parse RestApi 一起使用,谢谢。
您不需要删除设备,因为它正在为您的站点处理用户身份验证。另一方面,解析处理您的数据(基本上是保存和恢复数据)。
在您的 #stripe_connect
方法中,您似乎成功接收了有关用户的数据,用户登录后 Stripe 会为您提供这些数据。
如果您想保存该数据,请了解如何使用 Objects API。
如果您想将信息保存在自己的数据库中(而不是 Parse),只需忘记 Parse,您的代码就可以了。
UPD。如果你正在使用omniauth-stripe-connect,你可以去掉Devise(因为你不需要它广泛的功能,只需要stripe connect)。
按照文档中的说明,将以下内容添加到 config/initializers/omniauth.rb
:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :stripe_connect, ENV['STRIPE_CONNECT_CLIENT_ID'], ENV['STRIPE_SECRET']
end
OmniAuth.config.logger = Rails.logger
然后添加到你的routes.rb
:
get '/auth/:provider/callback', to: 'sessions#create'
然后将您的控制器重命名为 SessionsController
,将您的 stripe_connect
方法重命名为 create
。您将可以访问相同的 request.env['omniauth.auth']
哈希。