1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

vweb: continue after bad http client connection; performance fixes

* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .

* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.

* Fix -g compilation for urllib.v .

* vweb: println action= only in debug mode.

* vweb: max request headers counting fix.

* Make vweb.html get a 'ctx mut Context' param, just like the other methods.

* vweb: simplify add_header.

* Use a string builder for the most common html case so that the response http text can be send in one go.

* vweb: reduce _STR/string interpolation usage in the most common html response case.

* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
This commit is contained in:
Delyan Angelov
2019-12-11 16:32:54 +02:00
committed by Alexander Medvednikov
parent cfeec92826
commit 13769f440f
8 changed files with 85 additions and 56 deletions

View File

@@ -9,11 +9,13 @@ mut:
buf []byte
pub:
len int
initial_size int = 1
}
pub fn new_builder(initial_size int) Builder {
return Builder {
buf: make(0, initial_size, sizeof(byte))
initial_size: initial_size
}
}
@@ -44,4 +46,6 @@ pub fn (b mut Builder) cut(n int) {
}
pub fn (b mut Builder) free() {
b.buf = make(0, b.initial_size, 1)
b.len = 0
}