我正在构建不是以API模式而是为API的Rails 5应用程序。
我的一个API损坏。在浏览器中加载网址时:http://localhost:4300/api/v1/skills.json
浏览器返回的只是:
500内部服务器错误如果您是该网站的管理员,请阅读此Web应用程序的日志文件和/或Web服务器的日志文件,以找出问题所在。
鉴于我处于开发模式,如何使Rails像以前的Rails版本一样输出更多有用的信息?
添加到application.rb以下行:
config.exceptions_app = self.routes
所以您可以在路由中添加自定义错误:
Rails.application.routes.draw do
get "/404" => "errors#not_found"
get "/500" => "errors#exception"
post "/500" => "errors#exception"
get "/400" => "errors#exception"
post "/400" => "errors#exception"
例如,我显示:
class ErrorsController < ApplicationController
def not_found
render :json => {:error => "not-found"}.to_json, :status => 404
end
def exception
render json: {
error: {
message: env["action_dispatch.exception"].to_s,
detail: env["action_dispatch.exception"]
}
},
:status => 500
end
end