[英]rails devise simple authentication token getting 403 forbbiden
我正在使用Rails 4.2.6和ruby 2.1.1p76。
我正在将dev_phone_number作为主要标识符使用devise。
我正在尝试创建用于登录的API服务,但始终会遇到403错误(禁止访问)。
class Api::V1::SessionsController < Devise::SessionsController
#skip_before_filter :verify_authenticity_token
acts_as_token_authentication_handler_for User
respond_to :json
def create
#user = User.find_by phone_number: params['user']['phone_number']
warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#failure")
if(current_user != nil)
#current_user.authentication_token = generateToken
render :status => 200,
:json => { :code => 200,
:data => {:user => current_user} }
else
@new_user = User.new(user_params)
@new_user.email = 'null@null.com'
if @new_user.save!
render :status => 201,
:json => { :code => 201,
:data => {:user => @new_user} }
else
render :status => 500,
:json => { :code => 500,
:data => {} }
end
end
end
def failure
render :status => 403,
:json => { :code => 200,
:data => {} }
end
def user_params
params.require(:user).permit(:email,:password,:phone_number)
end
end
我发送的消息
{"user":{"phone_number":"0535934245","authentication_token":"2zfaWT2QySFigyE9XvsP"}}
希望对您有所帮助。
最好的记录,莎伦·达汉
登录API的CURL示例
curl -v http:// xyz / users / sign_in -X POST -H“ Accept:application / json” -H“ Content-Type:application / json” -d'{“ user”:{“ login”:“ 7838712847 “,” password“:” 8489“}}'
此卷曲应返回具有身份验证令牌的用户对象。 现在,登录后,该身份验证令牌用户将用于与我们的应用程序进行通信
因此,登录后,您需要在每个请求标头中发送用户的身份验证令牌
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.