Ruby on rails http basic authentication with json failure message

Ruby on Rails HTTP Basic authentication with JSON failure message

A short snippet on how to make Ruby on Rails authenticate_or_request_with_http_basic respond with a JSON valid message upon failure.

class ApplicationController < ActionController::API
  include(
    ActionController::HttpAuthentication::Basic::ControllerMethods
  )

  before_action :http_authenticate!

  def http_authenticate!
    authenticate_or_request_with_http_basic do |key, secret|
      return if Resource.find_by(
        key: key,
        secret: secret
      )
    end

    render(
      json: 'Invalid credentials'.to_json,
      status: 401
    )
  end
end
Sponsored

Cover photo by Vladimer Shioshvili on Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0) license.

Sponsored

The post Ruby on Rails HTTP Basic authentication with JSON failure message appeared first on Running with Ruby.


Discover more from Ubuntu-Server.com

Subscribe to get the latest posts sent to your email.

See also  How to View the Contents of DNS Cache on Ubuntu and Windows

Comments

No comments yet. Why don’t you start the discussion?

    Leave a Reply