Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 4 使用Doorkeeper/Bcrypt正确登录Rails API_Ruby On Rails 4_Oauth 2.0_Rails Api_Doorkeeper_Bcrypt Ruby - Fatal编程技术网

Ruby on rails 4 使用Doorkeeper/Bcrypt正确登录Rails API

Ruby on rails 4 使用Doorkeeper/Bcrypt正确登录Rails API,ruby-on-rails-4,oauth-2.0,rails-api,doorkeeper,bcrypt-ruby,Ruby On Rails 4,Oauth 2.0,Rails Api,Doorkeeper,Bcrypt Ruby,我已经使用rails 4创建了一个和API,目前我正试图弄清楚如何登录。由于API将用于iPhone应用程序,我们决定使用令牌身份验证和Doorkeeper/OAuth2 gem 到目前为止,我创建了一个signin控制器来负责对用户进行身份验证(我正在使用bcrypt散列密码) 上面代码的问题是法拉第超时。问题在于访问令牌调用。由于向第二个(access_token)发出了POST请求/对其进行了登录,该请求将交给门卫进行验证,因此必须等待第一个请求完成 我不确定这一过程是否过于复杂,但我想实

我已经使用rails 4创建了一个和API,目前我正试图弄清楚如何登录。由于API将用于iPhone应用程序,我们决定使用令牌身份验证和Doorkeeper/OAuth2 gem

到目前为止,我创建了一个signin控制器来负责对用户进行身份验证(我正在使用bcrypt散列密码)

上面代码的问题是法拉第超时。问题在于访问令牌调用。由于向第二个(access_token)发出了POST请求/对其进行了登录,该请求将交给门卫进行验证,因此必须等待第一个请求完成

我不确定这一过程是否过于复杂,但我想实现的是,从前端发出请求,对用户进行身份验证,并将令牌返回前端供将来使用

我尝试的另一种方法是使用以下内容发布到/oauth/token:

{ “授权类型”:“密码”, “用户名”:”test@gmail.com", “密码”:“$2a$10$igmaazkrsvich.8Glm3hcuRdqzeT5YQwYaKFN9eUbpfcmCqA3PBiO”, “客户id”:“F5CBC8D91F6E007C003E17BAF3F45CB83CEDE4313C3831AFA99E456F59B08E3F8”, “客户机密”:“F827F84548B33EBD8042CFBAA7AFF944F5844AAD79623ED68D83963BC62BB5” }

这种方法可以很好地工作,但是密码已经被散列,当我尝试使用

    dbPasswordHash = BCrypt::Password.new(params[:password])
在doorkeeper.rb中,我得到了一个关于BCrypt的错误(我尝试了“require'BCrypt'”)

欢迎提出任何建议

    dbPasswordHash = BCrypt::Password.new(params[:password])