Commit Graph

36 Commits

Author SHA1 Message Date
Aliaksandr Valialkin 495e130b8f Issue #16: support 'Connection: keep-alive' header for non-http/1.1 requests and/or responses 2015-12-10 11:19:34 +02:00
Aliaksandr Valialkin 6a340b7334 Added request PUT method support 2015-11-29 11:32:44 +02:00
Aliaksandr Valialkin 01031f43e2 Added support form multipart/form-data POST requests 2015-11-27 16:23:02 +02:00
Aliaksandr Valialkin 52c04f13b2 Added support for 'Connection: Upgrade', so RequestHandler may detect such connections and hijack them 2015-11-24 15:48:10 +02:00
Aliaksandr Valialkin 9f7463cd28 Access Cookie members via accessors 2015-11-22 13:29:21 +02:00
Aliaksandr Valialkin 82aca55d5a API consistency fix - GetCookie -> Cookie, PeekCookie -> Cookie 2015-11-22 02:16:05 +02:00
Aliaksandr Valialkin 5407951c06 Do not parse raw headers when writing request headers. This should improve request proxying speed 2015-11-22 00:41:06 +02:00
Aliaksandr Valialkin ed68dfc5f6 Optimization: do not parse full requests headers on ConnectionClose and Header calls. This should speed up common case with GET requests on the server 2015-11-19 12:15:20 +02:00
Aliaksandr Valialkin a2601c68af API consistency change - make Response.StatusCode accessor 2015-11-19 11:39:20 +02:00
Aliaksandr Valialkin 835bf87605 API consistency: Clear -> Reset to be consistent with standard go packages 2015-11-18 17:55:28 +02:00
Aliaksandr Valialkin 81a60d8e4b unoptimize response headers parsing, since it has no positive effect 2015-11-17 11:37:38 +02:00
Aliaksandr Valialkin 63aab18752 do not optimize for content-length access on response headers, since it works slower than full headers parsing 2015-11-17 11:10:52 +02:00
Aliaksandr Valialkin 6e785c7f03 Optimize access to ContentLength() and ConnectionClose() header methods 2015-11-17 10:02:25 +02:00
Aliaksandr Valialkin 9c9c94f4e0 Postpone headers' parsing until first access 2015-11-16 20:22:02 +02:00
Aliaksandr Valialkin 2dbf142a06 convert connectionClose to accessor 2015-11-16 18:23:08 +02:00
Aliaksandr Valialkin c728643d4a Access Content-Length via ContentLength accessor 2015-11-16 18:09:05 +02:00
Aliaksandr Valialkin 88e41d9b08 Removed accessors converting []byte to string, i.e. allocating memory. This should reduce memory usage for apps using fasthttp, since now they shoud either use []byte or do string() conversion on their own :) 2015-11-14 18:25:00 +02:00
Aliaksandr Valialkin 2e78d83bf7 Hide Request.RequestURI behind accessors in order to prevent users shooting in the foot when assigning to Request.RequestURI directly 2015-11-14 17:58:58 +02:00
Aliaksandr Valialkin 1f81c87c38 Substituted direct access to Request.Method by accessors, so package users don't shoot in the foot when assigning directly to Request.Method 2015-11-14 17:34:12 +02:00
Aliaksandr Valialkin 982edd5a7f Treat all errors on first header byte read as EOF. This eliminates numerous and useless 'connection reset by peer' log messages for keep-alive connections on busy server 2015-11-14 12:39:51 +02:00
Aliaksandr Valialkin 48fd01e5e0 Empty request method is equivalent to GET 2015-11-13 16:12:58 +02:00
Aliaksandr Valialkin f1e8e6bf25 Added support for identity responses. See http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.4 for details 2015-11-13 13:33:32 +02:00
Aliaksandr Valialkin 16632cbaa4 Set ConnectionClose for non-http/1.1 requests/responses. Do not support Connection: keep-alive for http/1.0 intentionally, since it will complicate the code without measurable benefits 2015-11-13 12:27:47 +02:00
Aliaksandr Valialkin 6bd9b01126 Added support for 'connection: close' request header 2015-11-12 18:54:15 +02:00
Aliaksandr Valialkin f8ae53ae49 Allow whitespaces in request uri, since certain stupid http clients do not bother escaping request uri :) 2015-11-12 14:14:30 +02:00
Aliaksandr Valialkin 8c92324ef2 Copy cookies in headers' CopyTo() method 2015-11-10 17:39:28 +02:00
Aliaksandr Valialkin d4e9c2ea22 Allow setting cookies via headers' Set*() methods 2015-11-10 17:09:12 +02:00
Aliaksandr Valialkin 980beca55b Added Len() to RequestHeader and ResponseHeader 2015-11-10 16:50:36 +02:00
Aliaksandr Valialkin 6bfe7306fa Do not skip cookies when calling VisitAll() on RequestHeader/ResponseHeader 2015-11-10 16:31:17 +02:00
Aliaksandr Valialkin 236d4bd461 Added Cookie.ParseBytes to be consistent with Args 2015-11-05 12:54:10 +02:00
Aliaksandr Valialkin 87105b99cb Added response cookies support 2015-11-05 12:07:54 +02:00
Aliaksandr Valialkin a0e1b7f448 Added functions for obtaining cookie values from RequestHeader 2015-11-04 18:24:12 +02:00
Aliaksandr Valialkin ee62382f34 Uniformly process all headers 2015-10-20 12:36:33 +03:00
Aliaksandr Valialkin 9798f80336 Added ability to set/get arbitrary request headers 2015-10-19 20:55:49 +03:00
Aliaksandr Valialkin c9dd39dd4a Added ability to set arbitrary response headers 2015-10-19 20:01:16 +03:00
Aliaksandr Valialkin a049630bca initial commit 2015-10-19 01:21:09 +03:00