Create session with Devise in web API on ruby on rails -


i'm trying make login system project using devise, chose him, because project have access , http api.

for can register user using following method of registration class:

def create   if userservice.create_user(params[:username], params[:email])     @user = user.new(user_params)     if @user.save       render json: @user, status: :created       return     end     render json: @user.errors, status: :unprocessable_entity     return   end    render json: "exit", status: :unprocessable_entity end 

and model of user note has things devise adds:

class user < activerecord::base   devise :database_authenticatable, :registerable,          :recoverable, :rememberable, :trackable, :validatable   has_many :schedules end 

my problem in session class because can not find include devise::internalhelpers:

class api::sessionscontroller < devise::sessionscontroller   prepend_before_filter :require_no_authentication, only: [:create]   include devise::internalhelpers    before_filter :ensure_params_exist    def create     build_resource     resource = user.find_for_database_authentication(email: params[:email])     return invalid_login_attempt unless resource      if resource.valid_password?(password: params[:password])       sign_in("user", resource)       render(json: {success: true, auth_token: resource.auth_token, login: resource.email})       return     end     invalid_login_attempt   end    def destroy     sign_out(resource_name)   end    protected     def ensure_params_exist       return unless params[:email].blank?       render(json: {success: false, message: "missing email parameter"}, status: 422)       return unless params[:password].blank?       render(json: {success: false, message: "missing password parameter"}, status: 422)     end      def invalid_login_attempt       warden.custom_failure!       render(json: {success: false, message: "error login or password"}, status: 401)     end    private     def create_params       params.permit(:email, :password)     end end 

another problem time creates user not generating token, should work?

well mistakes how internalhelpers api?

devise::internalhelpers has been removed. should include devise::controllers::helpers instead:

class api::sessionscontroller < devise::sessionscontroller   prepend_before_filter :require_no_authentication, only: [:create]   include devise::controllers::helpers   ... 

Comments

Popular posts from this blog

get url and add instance to a model with prefilled foreign key :django admin -

css - Make div keyboard-scrollable in jQuery Mobile? -

ruby on rails - Seeing duplicate requests handled with Unicorn -