Class: Jetra::Middleware::Validater

Inherits:
Object
  • Object
show all
Defined in:
lib/jetra/middleware/validater.rb

Overview

验证参数和返回值的基本类型

Instance Method Summary collapse

Constructor Details

#initialize(app) ⇒ Validater

Returns a new instance of Validater.



8
9
10
# File 'lib/jetra/middleware/validater.rb', line 8

def initialize(app)
  @app = app
end

Instance Method Details

#call(route, params) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/jetra/middleware/validater.rb', line 12

def call(route, params)

  if !params.kind_of?(Hash)
    response = Jetra::Response.new
    response.status = 0
    response.body = {msg: "Jetra::Middleware::Validater: params type miss match. excepted Hash, got #{params.class.to_s}"}
  else
    response = @app.call(route, params)
    if !response.status.kind_of?(Integer)
      response.status = 0
      response.body = {msg: "Jetra::Middleware::Validater: response.status type miss match. excepted Integer, got #{response.status.class.to_s}"}
    else
      if !response.body.kind_of?(Hash)
        response.status = 0
        response.body = {msg: "Jetra::Middleware::Validater: response.body type miss match. excepted Hash, got #{response.body.class.to_s}"}
      end
    end
  end

  response
end