Module: Conjoin::As

Defined in:
lib/conjoin/as.rb

Instance Method Summary collapse

Instance Method Details

#as(http_code = 200, extra_headers = {}, &block) ⇒ Object

Public: Sugar to do some common response tasks

http_code - Response status code (default: 200) extra_headers - Extra headers hash (default: {})

Examples:

on post, "users" do
  as 201 do
    "User successfully created!"
  end
end


15
16
17
18
19
# File 'lib/conjoin/as.rb', line 15

def as(http_code = 200, extra_headers = {}, &block)
  res.status = http_code
  res.headers.merge! extra_headers
  yield if block
end

#as_json(http_code = 200, extra_headers = {}, &block) ⇒ Object

Public: Sugar to do some common response tasks as_json

http_code - Response status code (default: 200) extra_headers - Extra headers hash (default: {}) Examples:

on post, "users" do
  as_json 201 do
    "User successfully created!"
  end
end


32
33
34
35
36
# File 'lib/conjoin/as.rb', line 32

def as_json(http_code = 200, extra_headers = {}, &block)
  require 'json'
  extra_headers["Content-Type"] ||= "application/json"
  as(http_code, extra_headers) { yield.to_json if block }
end