1
0
mirror of https://github.com/actix/actix-extras.git synced 2024-11-24 16:02:59 +01:00
Commit Graph

41 Commits

Author SHA1 Message Date
Dmitry Pypin
8873e9b39e Added FrozenClientRequest for easier retrying HTTP calls (#1064)
* Initial commit

* Added extra_headers

* Added freeze() method to ClientRequest which produces a 'read-only' copy of a request suitable for retrying the send operation

* Additional methods for FrozenClientRequest

* Fix

* Increased crates versions

* Fixed a unit test. Added one more unit test.

* Added RequestHeaderWrapper

* Small fixes

* Renamed RequestHeadWrapper->RequestHeadType

* Updated CHANGES.md files

* Small fix

* Small changes

* Removed *_extra methods from Connection trait

* Added FrozenSendBuilder

* Added FrozenSendBuilder

* Minor fix

* Replaced impl Future with concrete Future implementation

* Small renaming

* Renamed Send->SendBody
2019-09-10 10:29:32 +06:00
Nikolay Kim
63ddd30ee4 on_connect result isnt added to request extensions for http2 requests #1009 2019-09-01 13:15:02 +06:00
Nikolay Kim
2a2d7f5768 nightly clippy warnings 2019-07-17 15:53:51 +06:00
Nikolay Kim
baaa7b3fbb Replace ClonableService with local copy 2019-07-17 13:55:44 +06:00
Nikolay Kim
d286ccb4f5 Add on-connect callback #946 2019-06-28 14:34:26 +06:00
Nikolay Kim
a548b69679 fmt 2019-06-05 08:43:13 +06:00
Nicolas Gotchac
a614be7cb5 Don't DISCONNECT from stream when reader is empty (#870)
* Don't DISCONNECT from stream when reader is empty

* Fix chunked transfer: poll_request before closing stream + Test
2019-05-29 20:37:42 +04:00
Nikolay Kim
7f12b754e9 Handle socket read disconnect 2019-05-25 03:07:40 -07:00
Nikolay Kim
f8af3b86e5 export set_date 2019-05-14 08:48:11 -07:00
Nikolay Kim
df08baf67f update actix-net dependencies 2019-05-12 08:34:51 -07:00
Nikolay Kim
f27beab016 fix case for transfer-encoding header name 2019-05-02 09:30:00 -07:00
Nikolay Kim
f429d3319f Read until eof for http/1.0 responses #771 2019-04-24 11:57:40 -07:00
Nikolay Kim
2e19f572ee add tests for camel case headers rendering 2019-04-24 11:27:57 -07:00
Peter Ding
64f603b076 Support to set header names of ClientRequest as Camel-Case (#713)
* Support to set header names of `ClientRequest` as Camel-Case

This is the case for supporting to request for servers which don't
perfectly implement the `RFC 7230`. It is important for an app
which uses `ClientRequest` as core part.

* Add field `upper_camel_case_headers` to `ClientRequest`.

* Add function `set_upper_camel_case_headers` to `ClientRequest`
  and `ClientRequestBuilder` to set field `upper_camel_case_headers`.

* Add trait `client::writer::UpperCamelCaseHeader` for
  `http::header::HeaderName`, let it can be converted to Camel-Case
  then writed to buffer.

* Add test `test_client::test_upper_camel_case_headers`.

* Support upper Camel-Case headers

* [actix-http] Add field `upper_camel_case_headers` for `RequestHead`
* [actix-http] Add code for `MessageType` to support upper camel case
* [awc] Add functions for `ClientRequest` to set upper camel case

* Use `Flags::CAMEL_CASE` for upper camel case of headers
2019-04-24 10:48:49 -07:00
Nikolay Kim
a116c4c2c7 Expose peer addr via Request::peer_addr() and RequestHead::peer_addr 2019-04-16 09:54:02 -07:00
Nikolay Kim
d86567fbdc revert SendResponse::Error type 2019-04-11 14:18:58 -07:00
Nikolay Kim
d115b3b3ed ws verifyciation takes RequestHead; add SendError utility service 2019-04-11 14:00:32 -07:00
Nikolay Kim
12e1dad42e export TestBuffer 2019-04-10 19:43:09 -07:00
Nikolay Kim
9bb40c249f add h1::SendResponse future; renamed to MessageBody::size 2019-04-10 12:24:17 -07:00
Nikolay Kim
c22a3a71f2 fix test 2019-04-08 19:07:11 -07:00
Nikolay Kim
561f83d044 add upgrade service support to h1 dispatcher 2019-04-08 17:51:14 -07:00
Nikolay Kim
43d325a139 allow to specify upgrade service 2019-04-08 14:51:16 -07:00
Nikolay Kim
aa78565453 use objects pool for HttpRequest; optimize nested services call 2019-04-07 23:06:21 -07:00
Nikolay Kim
3c650ca194 remove buffer capacity for payload 2019-04-07 10:40:45 -07:00
Nikolay Kim
219baf3323 remove PayloadWriter trait 2019-04-07 10:29:26 -07:00
Nikolay Kim
ec09d6fbe6 optimize encode headers and body split 2019-04-07 10:03:38 -07:00
Nikolay Kim
748289f0ff use custom headers map; more optimizations 2019-04-06 15:02:02 -07:00
Nikolay Kim
3872d3ba5a refactor h1 dispatcher 2019-04-06 08:12:58 -07:00
Nikolay Kim
fbedaec661 add expect: 100-continue support #141 2019-04-05 16:46:44 -07:00
Nikolay Kim
bc834f6a03 remove some static contraints 2019-04-04 10:59:34 -07:00
Nikolay Kim
e738361e09 move multipart support to separate crate 2019-04-03 12:28:58 -07:00
Nikolay Kim
f56072954b remove PayloadBuffer 2019-04-03 03:20:20 -07:00
Nikolay Kim
49a499ce74 properly allocate read buffer 2019-04-02 11:11:32 -07:00
Nikolay Kim
c27fbdc35f Preallocate read buffer for h1 codec, #749 2019-04-02 10:19:56 -07:00
Nikolay Kim
d846328f36 fork cookie crate 2019-03-29 21:13:39 -07:00
Nikolay Kim
e84c95968f reuse PayloadBuffer from actix-http 2019-03-28 05:34:33 -07:00
Nikolay Kim
c59937784e add client websockets support 2019-03-27 18:53:19 -07:00
Nikolay Kim
3edc515bac refactor RequestHead/ResponseHead 2019-03-27 10:38:01 -07:00
Nikolay Kim
faa3ea8e5b rename BodyLength to BodySize 2019-03-27 09:24:55 -07:00
Nikolay Kim
d49a8ba53b add client TestResponse 2019-03-26 21:57:04 -07:00
Nikolay Kim
c7ad677804 Merge actix-http project 2019-03-26 11:54:35 -07:00