From 89e1f00cd540bca54c2cbcb7d9b6cad5e0e3cf34 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Wed, 5 Jan 2011 10:22:11 -0800 Subject: send proper 416 responses 416 responses without a body should respond with a zero Content-Length and a Content-Range that allows clients to specify a proper range in the future. rfc2616, section 14.16 says: > A server sending a response with status code 416 (Requested > range not satisfiable) SHOULD include a Content-Range field > with a byte-range- resp-spec of "*". The instance-length > specifies the current length of the selected resource. --- lib/rainbows/response.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib/rainbows/response.rb') diff --git a/lib/rainbows/response.rb b/lib/rainbows/response.rb index c0d0740..705de62 100644 --- a/lib/rainbows/response.rb +++ b/lib/rainbows/response.rb @@ -140,6 +140,8 @@ module Rainbows::Response end if 0 > count || offset >= size + headers[Content_Length] = "0" + headers[Content_Range] = "bytes */#{clen}" return 416, headers, nil else count = size if count > size -- cgit v1.2.3-24-ge0c7