diff --git a/engine/fasthttp/response.go b/engine/fasthttp/response.go
index <HASH>..<HASH> 100644
--- a/engine/fasthttp/response.go
+++ b/engine/fasthttp/response.go
@@ -52,6 +52,9 @@ func (r *Response) WriteHeader(code int) {
 
 // Write implements `engine.Response#Write` function.
 func (r *Response) Write(b []byte) (n int, err error) {
+	if !r.Committed() {
+		r.WriteHeader(http.StatusOK)
+	}
 	n, err = r.writer.Write(b)
 	r.size += int64(n)
 	return
diff --git a/engine/standard/response.go b/engine/standard/response.go
index <HASH>..<HASH> 100644
--- a/engine/standard/response.go
+++ b/engine/standard/response.go
@@ -56,6 +56,9 @@ func (r *Response) WriteHeader(code int) {
 
 // Write implements `engine.Response#Write` function.
 func (r *Response) Write(b []byte) (n int, err error) {
+	if !r.Committed() {
+		r.WriteHeader(http.StatusOK)
+	}
 	n, err = r.writer.Write(b)
 	r.size += int64(n)
 	return
Response#Write wites head in case it is not written