API login/logout with http header token

This commit is contained in:
Min Zeya Phyo
2017-04-14 23:22:58 +06:30
parent db75780267
commit 5ca9615e38
11 changed files with 47 additions and 22 deletions

View File

@@ -1,9 +1,36 @@
class Api::AuthenticateController < ActionController::API
class Api::AuthenticateController < Api::ApiController
skip_before_action :authenticate
def create
emp_id = params[:emp_id]
password = params[:password]
if emp_id && password
@employee = Employee.login(emp_id, password)
if @employee
render json: JSON.generate({:status => true, :session_token => @employee.token_session, :name => @employee.name, :role => @employee.role})
else
render json: JSON.generate({:status => false, :error_message => "Bad Emp_ID or Password."})
end
else
render json: JSON.generate({:status => false, :error_message => "Input Parameters missing."})
end
end
def destroy
logout_status = Employee.logout(params[:session_token])
if logout_status
render json: JSON.generate({:status => true})
else
render json: JSON.generate({:status => false, :error_message => "Session Token Invalid or Missing"})
end
end
def authenticate_params
params.permit(:emp_id, :password, :session_token)
end
end