Commit Graph

80 Commits

Author SHA1 Message Date
Aliaksandr Valialkin 103adc311e Do not compress responses with sizes smaller than 200 bytes
Compressing small bodies has little sense, since the compressed result size
may exceed the original body size.

This should save CPU time when the server responds with small responses.
2017-05-17 16:17:53 +03:00
Aliaksandr Valialkin b0de56d13b Properly set "https" scheme in RequestCtx.URI() for TLS connections 2017-01-15 00:26:21 +02:00
Aliaksandr Valialkin 21021ceb31 Added a test for redirecting from https to schemeless url 2017-01-14 23:40:56 +02:00
Aliaksandr Valialkin 1913bdea45 Set 'Connection: close' response header when server couldn't parse or accept incoming request 2016-11-17 13:50:15 +02:00
Aliaksandr Valialkin e0618f8ef5 an attempt to localize travis failure on TestServerErrSmallBuffer 2016-11-14 22:56:00 +02:00
Aliaksandr Valialkin 78e415082d an attempt to fix travis build 2016-11-14 22:40:43 +02:00
Aliaksandr Valialkin 02fe9b8533 Issue #173: return valid response instead of silently closing connection on request parsing errors 2016-11-10 18:09:23 +02:00
Aliaksandr Valialkin 935c556b36 Added RequestCtx.Hijacked method for determining whether the underlying connection is hijacked 2016-10-21 14:33:22 +03:00
Aliaksandr Valialkin e0c9f3d5ff typo fixes in comments 2016-10-13 17:39:06 +03:00
Aliaksandr Valialkin 2662f2e1f4 Allow redirecting to urls without scheme, i.e. //google.com/foo.bar 2016-08-17 18:55:32 +03:00
Aliaksandr Valialkin 5210f60181 Detect overriden TLS connections in RequestCtx.IsTLS and RequestCtx.TLSConnectionState 2016-08-17 18:01:59 +03:00
Gerasimos Maropoulos 006fac3cba Implement VisitUserValues - https://github.com/valyala/fasthttp/issues/126 (#129) 2016-07-12 09:40:24 +03:00
Aliaksandr Valialkin d42167fd04 Set response Server header to Server.Name if it is empty. This properly handles #118 2016-06-17 13:13:04 +03:00
Aliaksandr Valialkin efbb037c40 Added RequestCtx.Redirect tests, which cover cases mentioned in https://github.com/kataras/iris/issues/173 2016-06-07 13:30:42 +03:00
Aliaksandr Valialkin 3c5ba2c98d Limit the number of concurrently running request handlers inside TimeoutHandler 2016-06-06 16:47:02 +03:00
Aliaksandr Valialkin b8b31526d7 Do not compress already compressed response in CompressHandler 2016-06-06 14:15:34 +03:00
Aliaksandr Valialkin 90baa054bc Export IsBodyStream on RequestCtx, Request and Response
These methods may help writing proper request handler wrappers
for request handlers, which may set body either via SetBodyStream*
or via usual body methods.
2016-06-03 17:07:13 +03:00
Aliaksandr Valialkin f68634569e Issue #103: Set 'Server' response header before calling user-provided request handler 2016-05-24 15:41:08 +03:00
Aliaksandr Valialkin 57d56c2d34 Fixed flacky TestServerResponseBodyStream 2016-05-24 15:27:30 +03:00
Aliaksandr Valialkin 2d5c6fd01a Added Server.ConnID() for associating distinct requests that come from the same client connection 2016-04-24 22:01:13 +03:00
Aliaksandr Valialkin c9c8d72607 Issue #78: immediately flush chunked data to client 2016-04-15 23:14:38 +03:00
Aliaksandr Valialkin 8d147e45af Issue #76: fixed data races in TimeoutHandler and RequestCtx.TimeoutError*. Updated tests for catching similar data races in the future 2016-04-06 15:08:34 +03:00
Aliaksandr Valialkin 9f20a62336 added workerpool tests 2016-03-31 14:41:27 +03:00
Aliaksandr Valialkin 7d29fb3b3d server: added DisableKeepalive option for disabling keep-alive connections 2016-03-31 10:05:31 +03:00
Aliaksandr Valialkin d444ab9169 Server: write error response when concurrency limit or per-ip conn limit is exceeded before closing the connection. This should improve server diagnostics 2016-03-28 18:42:40 +03:00
Aliaksandr Valialkin 0a85495ae0 Validate multipart form value in server test 2016-03-02 20:15:02 +02:00
Aliaksandr Valialkin 15ffe2f795 Issue #63: added helper functions for starting https server with certificates embedded into the app 2016-03-02 15:23:21 +02:00
Aliaksandr Valialkin 877a47395f Issue #61: use proper content-length in multipart/form-data tests 2016-03-01 18:12:00 +02:00
Aliaksandr Valialkin 8581513fa2 Issue #61: server: properly read multipart/form-data 2016-03-01 18:07:52 +02:00
Aliaksandr Valialkin dd6954f4b2 Issue #57: Server: added ability to disable header names' normalizing 2016-02-25 14:00:04 +02:00
Aliaksandr Valialkin 108d002365 Added tests for Server.ReduceMemoryUsage flag 2016-02-24 15:45:56 +02:00
Aliaksandr Valialkin 115b98672e Make sure that the server always closes connection after HTTP/1.0 request without 'Connection: keep-alive' header 2016-02-22 23:00:36 +02:00
Aliaksandr Valialkin b8f996c13f Added more tests for keep-alive and non-keep-alive connections during HTTP/1.0 requests 2016-02-22 22:51:12 +02:00
Aliaksandr Valialkin 9f608dd1fd Issue #51: Make RequestCtx.SendFile a synonim to ServeFile. This breaks RequestCtx.SendFile API, but I believe the new behaviour of SendFile outweights API breakage 2016-02-17 11:35:36 +02:00
Aliaksandr Valialkin 910e5a9d2a Added FormFile and FormValue helpers to RequestCtx in order to be on par with net/http 2016-01-08 15:03:02 +02:00
Aliaksandr Valialkin a175504c5f improved 'connection: close' server tests 2016-01-08 13:52:28 +02:00
Aliaksandr Valialkin c5d9023043 Issue #30: properly handle content-length for HEAD responses 2016-01-05 18:02:50 +02:00
Aliaksandr Valialkin 7f5b710e05 Issue #31: do not send response body for HEAD requests 2016-01-05 16:53:38 +02:00
Aliaksandr Valialkin 84af73053f Added tests for RequestCtx.*UserValue* functions 2016-01-05 15:59:33 +02:00
Aliaksandr Valialkin 3284c3e671 Pull request #24: added support for '100 Continue' responses and 'Expect: 100-continue' requests. Kudos to @celer 2015-12-25 16:11:20 +02:00
Aliaksandr Valialkin 149f0f38b7 Issue #14: added CompressHandler wrapper for transparent response compression support 2015-12-25 13:33:01 +02:00
Aliaksandr Valialkin e4c3007338 Improved RequestCtx.WriteString() test 2015-12-24 20:54:17 +02:00
Aliaksandr Valialkin 38473d3cf1 Issue #20: Added TimeoutErrorWithResponse helper function to RequestCtx 2015-12-17 12:25:53 +02:00
Aliaksandr Valialkin 3ab54e2452 Issue #20: Added TimeoutErrorWithCode helper function to RequestCtx 2015-12-16 21:13:59 +02:00
Aliaksandr Valialkin 71e8c28a95 Issue #16: properly set 'Connection' response header 2015-12-10 11:47:25 +02:00
Aliaksandr Valialkin 9c18f79145 Added support for If-Modified-Since to SendFile and FS 2015-12-09 18:51:51 +02:00
Aliaksandr Valialkin 52999aff94 Added SetBodyStreamWriter for streaming response body 2015-12-09 16:33:07 +02:00
Aliaksandr Valialkin 9bac0d4123 Added RequestCtx.SendFile() 2015-12-08 15:18:21 +02:00
Aliaksandr Valialkin 4cf82252e3 Added ability to filter out non-GET requests 2015-11-29 12:49:01 +02:00
Aliaksandr Valialkin 145fa563c6 Removed flackiness from Logger tests by skipping request duration 2015-11-28 20:45:02 +02:00