Skip to content

Instantly share code, notes, and snippets.

@kennethteh90
Created August 19, 2020 07:34
Show Gist options
  • Save kennethteh90/b5c6b42e3ad4b2a416051d4adc00dcdd to your computer and use it in GitHub Desktop.
Save kennethteh90/b5c6b42e3ad4b2a416051d4adc00dcdd to your computer and use it in GitHub Desktop.
class OtpLoginController < ApplicationController
def request_otp
user = otp_user
user.send_otp
render json: {}, status: 200
end
def otp_login
user = otp_user
raise SomeError unless user.verify_otp(params[:otp])
...
# Do your login and response here, e.g. login_user if you're using something like Devise
end
private
def otp_user
user = User.find_by(mobile_number: params[:mobile_number])
raise SomeError unless user
user
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment