/** * CRXHttpResponse.cpp */ #ifdef _WIN32 # pragma warning (disable:4996) #endif #include "CRXHttpResponse.h" #include #include #include CRXHttpResponse::CRXHttpResponse (void) : mStatusCode (0) { } void CRXHttpResponse::SetResponse (const char * aHttpResponse) { SetMessage (aHttpResponse); } std::string CRXHttpResponse::GetResponse (void) const { return GetMessage (); } CRXHttpResponse & CRXHttpResponse::operator = (const char * aHttpMessage) { SetMessage (aHttpMessage); return *this; } void CRXHttpResponse::Parse (void) { std::string aHttpStatus = ""; char aStatusCode[64] = {0x00, }; char aStatusString[64] = {0x00, }; char aHttpVersion[64] = {0x00, }; /*----------------------------------------------------------------*/ aHttpStatus = GetResponse ().substr (0, mHttpMessage.find ('\r')); /*---------------------------------------------------------------- * 1. separate first line to , and *----------------------------------------------------------------*/ sscanf (aHttpStatus.c_str (), "%[^ ] %[^ ] %[^ ]\r\n", aHttpVersion, aStatusCode, aStatusString); mHttpVersion.assign (aHttpVersion); mStatusString.assign (aStatusString); mStatusCode = atoi (aStatusCode); /*----------------------------------------------------------------*/ } int CRXHttpResponse::GetStatusCode (void) const { return mStatusCode; }