| 123456789101112131415161718192021222324252627 |
- # frozen_string_literal: true
- require './lib/api_error/base_error'
- class API::V1::ApplicationController < ActionController::API
- before_action :set_default_response_format
- rescue_from StandardError, with: :handle_unhandled_api_error
- def not_found
- @error = APIError::BaseError.new("The requested resource was not found")
- render partial: 'error', status: :not_found
- end
- private
- def handle_unhandled_api_error(e)
- Rails.logger.error("Unhandled API Error: #{e}\n#{e.backtrace.join("\n")}")
- @error = APIError::BaseError.new("An unhandled exception occurred.", internal_error: e)
- render partial: 'error', status: :internal_server_error
- end
- def set_default_response_format
- request.format = :json
- end
- end
|