Rails 3.1 アプリでrescue_from
は、ベース API コントローラーの上に次のようなものがあります。
rescue_from Exceptions::InvalidApiKey, :with => :invalid_api_key
invalid_api_key では次のようになります。
def invalid_api_key
Rails.logger.debug "Invalid API key"
render :json => {:error => :invalid_api_key}, :status => :forbidden
end
before_filter
API キーをチェックし、必要に応じて InvalidApiKey 例外をスローする があります。
ただし、AbstractController::DoubleRenderError
例外ハンドラーと元のアクションでレンダリングしようとするため、間違った API キーでコントローラーを試すとエラーが発生します。
どうすればこれを回避できますか?