简体   繁体   English

如何访问iOS Stripe创建的令牌?

[英]How to access the token created by iOS Stripe?

i successfully got generating tokens working on the ios side, and i have a heroku rails app set up. 我成功地在ios端生成了令牌,并且我设置了一个heroku rails应用程序。 How do i retrieve this token on the server side? 如何在服务器端检索此令牌?

getting the error `Completed 500 Internal Server Error in 1ms (ActiveRecord: 0.0ms) 在1毫秒内得到错误`Completed 500 Internal Server Error(ActiveRecord:0.0ms)

NoMethodError (undefined method []' for nil:NilClass): app/controllers/login_controller.rb:11:in 'log_in' NoMethodError( []' for nil:NilClass): app/controllers/login_controller.rb:11:in 'log_in'未定义方法[]' for nil:NilClass): app/controllers/login_controller.rb:11:in 'log_in'

here is my controller code: 这是我的控制器代码:

class LoginController < ApplicationController
  def index

  end
  def log_in
    puts params

    headers = {"X-Parse-Application-Id" => "APIKEY", 
                         "X-Parse-REST-API-Key" => "APIKEY"}
    query = {:username => params[:user][:username], 
                     :password => params[:user][:password]}

            @response = HTTParty.get('https://api.parse.com/1/login', 
        :query => query,
            :headers => headers)

        session[:session_token] = @response["sessionToken"]
        session[:object_id] = @response["objectId"]
        @object_id = session[:object_id]
            @test = HTTParty.get("https://api.parse.com/1/classes/_User/#{@object_id}", 
                :headers => {"X-Parse-Application-Id" => "APIKEY", 
                             "X-Parse-REST-API-Key" =>"APIKEY"} )

        session[:stripe_acct_id] = @test["uid"]


end
    def logout
        logout = HTTParty.post('https://api.parse.com/1/logout',
          :headers => {"X-Parse-Application-Id" => "APIKEY", 
                       "X-Parse-REST-API-Key" => "APIKEY",
                       "X-Parse-Session-Token" => session[:session_token]})
        reset_session
                redirect_to :controller => "login"

end

    def deauthorize

      @object_id = session[:object_id]

           HTTParty.post("https://connect.stripe.com/oauth/deauthorize",
                    :basic_auth => { :username => ENV['STRIPE_SECRET'] },
                    :query => { client_id: ENV['STRIPE_CONNECT_CLIENT_ID'],
                                stripe_user_id: session[:stripe_acct_id]})

    end
end

In your controller add: 在您的控制器中添加:

protect_from_forgery: :null, only: :log_in

For your error, it's because you don't send user object in your post request. 对于您的错误,这是因为您没有在发布请求中发送用户对象。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM