diff options
| author | levlam <levlam@telegram.org> | 2026-01-12 01:08:07 +0300 |
|---|---|---|
| committer | levlam <levlam@telegram.org> | 2026-01-12 01:08:07 +0300 |
| commit | 58aa7c40f7dd7117d08ada1d84c5417ed1883eb8 (patch) | |
| tree | 7cf8c9acaceb65eb69f7df4e4ca77dc82ba095ec | |
| parent | 7c01a8a4ebcd73205f99a00e5d8af978ea26a9aa (diff) | |
Add HttpHeaderCreator::add_host_header.
| -rw-r--r-- | tdnet/td/net/HttpHeaderCreator.cpp | 10 | ||||
| -rw-r--r-- | tdnet/td/net/HttpHeaderCreator.h | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tdnet/td/net/HttpHeaderCreator.cpp b/tdnet/td/net/HttpHeaderCreator.cpp index dd70bcb49..a3db8321e 100644 --- a/tdnet/td/net/HttpHeaderCreator.cpp +++ b/tdnet/td/net/HttpHeaderCreator.cpp @@ -10,6 +10,16 @@ namespace td { +void HttpHeaderCreator::add_host_header(HttpUrl::Protocol protocol, Slice host, int32 port) { + sb_ << "Host: "; + if ((protocol == HttpUrl::Protocol::Https && port == 443) || (protocol == HttpUrl::Protocol::Http && port == 80)) { + sb_ << host; + } else { + sb_ << host << ':' << port; + } + sb_ << "\r\n"; +} + string HttpHeaderCreator::get_host_header(HttpUrl::Protocol protocol, Slice host, int32 port) { if ((protocol == HttpUrl::Protocol::Https && port == 443) || (protocol == HttpUrl::Protocol::Http && port == 80)) { return host.str(); diff --git a/tdnet/td/net/HttpHeaderCreator.h b/tdnet/td/net/HttpHeaderCreator.h index 021f72c17..ede1f9fe7 100644 --- a/tdnet/td/net/HttpHeaderCreator.h +++ b/tdnet/td/net/HttpHeaderCreator.h @@ -65,6 +65,8 @@ class HttpHeaderCreator { add_header("Connection", "keep-alive"); } + void add_host_header(HttpUrl::Protocol protocol, Slice host, int32 port); + static string get_host_header(HttpUrl::Protocol protocol, Slice host, int32 port); Result<Slice> finish(Slice content = {}) TD_WARN_UNUSED_RESULT; |
