When the response body is empty, rocket won't send the final zero-length terminating chunk for chunked encoding. I think this causes the browser to wait for the connection close in order to tell the end of the response.