提交 79b0b1a0 编写于 作者: J Jeremy Kemper

Extract Response#string_body?

上级 7e6c310b
......@@ -210,7 +210,11 @@ def handle_conditional_get!
def nonempty_ok_response?
ok = !status || status.to_s[0..2] == '200'
ok && !body_parts.respond_to?(:call) && body_parts.any?
ok && string_body?
end
def string_body?
!body_parts.respond_to?(:call) && body_parts.any? && body_parts.all? { |part| part.is_a?(String) }
end
def set_conditional_cache_control!
......@@ -231,7 +235,7 @@ def set_content_length!
headers.delete('Content-Length')
elsif length = headers['Content-Length']
headers['Content-Length'] = length.to_s
elsif !body_parts.respond_to?(:call) && (!status || status.to_s[0..2] != '304')
elsif string_body? && (!status || status.to_s[0..2] != '304')
headers["Content-Length"] = Rack::Utils.bytesize(body).to_s
end
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册