diff options
Diffstat (limited to 'src/zenhttp/httpclient.cpp')
| -rw-r--r-- | src/zenhttp/httpclient.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/zenhttp/httpclient.cpp b/src/zenhttp/httpclient.cpp index 3da9f91fc..c5c808c23 100644 --- a/src/zenhttp/httpclient.cpp +++ b/src/zenhttp/httpclient.cpp @@ -39,7 +39,14 @@ HttpClientBase::HttpClientBase(std::string_view BaseUri, const HttpClientSetting , m_BaseUri(BaseUri) , m_ConnectionSettings(ConnectionSettings) { - m_SessionId = GetSessionIdString(); + if (ConnectionSettings.SessionId == Oid::Zero) + { + m_SessionId = GetSessionIdString(); + } + else + { + m_SessionId = ConnectionSettings.SessionId.ToString(); + } } HttpClientBase::~HttpClientBase() @@ -207,6 +214,19 @@ HttpClient::~HttpClient() delete m_Inner; } +void +HttpClient::SetSessionId(const Oid& SessionId) +{ + if (SessionId == Oid::Zero) + { + m_SessionId = GetSessionIdString(); + } + else + { + m_SessionId = SessionId.ToString(); + } +} + HttpClient::Response HttpClient::Put(std::string_view Url, const IoBuffer& Payload, const HttpClient::KeyValueMap& AdditionalHeader) { |