send
-- send response headers and content
local
list: like sorted_headers
do
if not is_sent then
set_content_length (content_buffer.count)
-- NOTE: There is no need to send the HTTP status line because
-- the FastCGI protocol does it for us.
if status = Http_status.ok then
set_default_headers; set_cookie_headers
end
list := sorted_headers
if not is_head_request then
-- Making linefeed conditional fixes the Cherokee broken network pipe problem
list.extend (Carriage_return_new_line)
list.extend (content_buffer.text)
end
write (list.joined_strings)
is_sent := True
end
end
My Eiffel FastCGI client works fine for normal GET requests. For example:
However this is what I get if send a HEAD request
There are three things wrong with this:
Cache-Control
andPragma
This is the client code from class FCGI_SERVLET_RESPONSE that returns the response.
Is this a bug or am I missing something?