34 #ifndef COMMON_WINDOWS_HTTP_UPLOAD_H__ 35 #define COMMON_WINDOWS_HTTP_UPLOAD_H__ 37 #pragma warning( push ) 39 #pragma warning( disable : 4530 ) 69 const map<wstring, wstring> ¶meters,
70 const wstring &upload_file,
71 const wstring &file_part_name,
73 wstring *response_body,
77 class AutoInternetHandle;
83 static bool HTTPUpload::ReadResponse(HINTERNET request, wstring* response);
86 static wstring GenerateMultipartBoundary();
89 static wstring GenerateRequestHeader(
const wstring &boundary);
94 static bool GenerateRequestBody(
const map<wstring, wstring> ¶meters,
95 const wstring &upload_file,
96 const wstring &file_part_name,
97 const wstring &boundary,
98 string *request_body);
101 static bool GetFileContents(
const wstring &filename, vector<char> *contents);
104 static wstring UTF8ToWide(
const string &utf8);
107 static string WideToUTF8(
const wstring &wide);
112 static bool CheckParameters(
const map<wstring, wstring> ¶meters);
124 #pragma warning( pop ) 126 #endif // COMMON_WINDOWS_HTTP_UPLOAD_H__
static bool SendRequest(const wstring &url, const map< wstring, wstring > ¶meters, const wstring &upload_file, const wstring &file_part_name, int *timeout, wstring *response_body, int *response_code)