diff options
Diffstat (limited to 'protocols/FacebookRM/src/http_request.cpp')
| -rw-r--r-- | protocols/FacebookRM/src/http_request.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/protocols/FacebookRM/src/http_request.cpp b/protocols/FacebookRM/src/http_request.cpp index 3e9f8ff53c..8c2a42c19c 100644 --- a/protocols/FacebookRM/src/http_request.cpp +++ b/protocols/FacebookRM/src/http_request.cpp @@ -17,6 +17,51 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "stdafx.h" +HttpRequest::HttpRequest(int type, LPCSTR url) +{ + m_szUrl = url; + flags = NLHRF_HTTP11 | NLHRF_SSL | NLHRF_DUMPASTEXT; + requestType = type; + timeout = 600 * 1000; + + NotifyErrors = true; + Persistent = DEFAULT; +} + +HttpRequest::HttpRequest(int type, CMStringDataFormat, LPCSTR urlFormat, ...) +{ + m_szUrl.AppendFormatV(urlFormat, (va_start(formatArgs, urlFormat), formatArgs)); + flags = NLHRF_HTTP11 | NLHRF_SSL | NLHRF_DUMPASTEXT; + requestType = type; + va_end(formatArgs); + timeout = 20 * 1000; + + NotifyErrors = true; + Persistent = DEFAULT; +} + +NETLIBHTTPREQUEST* HttpRequest::Send(HNETLIBUSER nlu) +{ + if (m_szUrl.Find("://") == -1) + m_szUrl.Insert(0, ((flags & NLHRF_SSL) ? "https://" : "http://")); + if (!m_szParam.IsEmpty()) { + m_szUrl.AppendChar('?'); + m_szUrl += m_szParam; + } + szUrl = m_szUrl.GetBuffer(); + + if (!pData) { + pData = Body.ToString(); + dataLength = (int)mir_strlen(pData); + } + + Netlib_Logf(nlu, "Send request to %s", szUrl); + + return Netlib_HttpTransaction(nlu, this); +} + +///////////////////////////////////////////////////////////////////////////////////////// + HttpRequest::HttpRequestBody& HttpRequest::HttpRequestBody::operator<<(const char *str) { AppendSeparator(); |
