Include (or ship) recommended integration layer(s) for various HTTP clients
Many users will want to use Tor to make https requests. Doing this right now is quite a performance involving
TlsConnectors and so on. We have
arti-client/examples/hyper.rs and it is already complex and doesn't do TLS.
Integration layers we ought to provide:
hyper (done in !355 (merged) et preq)
reqwest (may need new upstream hook)
ureq (may need new upstream hook)
We should provide a nice way to do this.
arti_http_client[_hyper]which contains the appropriate glue, with its own example.
IMO we should not have any example which supports HTTP but not HTTPS. If we find it is difficult to provide an HTTPS-capable example we need to improve our provided APIs.
Talk to upstream of
ureqand maybe that would let us provide a nice simple API there. Perhaps this is a separate crate or a separate
- #286 in which I argue that we should provide a sync API
- #285 where I discuss config, of which scheme this new crate would need to partake
- #284 (closed) whihc contains opinions about client construction which may be relevant
Adding this API is not in itself an API break but building it may highlight API problems in
arti_client, so I have added the "API break" tag.