aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/zero/response.rb16
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/zero/response.rb b/lib/zero/response.rb
index fefa320..c86e5df 100644
--- a/lib/zero/response.rb
+++ b/lib/zero/response.rb
@@ -30,12 +30,18 @@ module Zero
#
# @return [Array]
#
- def to_a()
+ def to_a
# TODO Remove content length and body, on certain status codes
- # Set content length, if not already set
- content_length unless header.has_key? 'Content-Length'
- # Set content type, if not already set
- content_type 'text/html' unless header.has_key? 'Content-Type'
+ if status == 204
+ header.delete('Content-Length')
+ header.delete('Content-Type')
+ body = []
+ else
+ # Set content length, if not already set
+ content_length unless header.has_key? 'Content-Length'
+ # Set content type, if not already set
+ content_type 'text/html' unless header.has_key? 'Content-Type'
+ end
[status, header, body]
end