我想在我的api响应中定义自定义错误代码,如
{ status: 401,message: "Authentication issue",code: 1000}
我想在我的应用程序中使用一些解释文档来定义这1000个代码。我怎么能这样做?
答案 0 :(得分:0)
首先,您需要定义自定义异常:
class API::Unauthorized < StandardError
attr_reader :code
def initialize(code)
super
@code = code
end
end
然后在您的APIController中使用rescue_from,添加以下内容:
rescue_from StandardError, :with => :exception_handler
def exception_handler(exception)
if exception.is_a? API::Unauthorized
render json: { status: 401, message: "Authentication issue", code: exception.code }, status: unauthorized
end
end
现在您可以根据您的实现抛出不同的异常代码:
raise API::Unauthorized.new(1000)