使用InternetReadFile时要注意读取完整数据
使用这个api读取数据后,即使数据不完整,该函数不会报任何错,GetLastError也显示操作成功。使用时要注意通过其参数判断是否读取完毕
void InternetReadFileEx(HINTERNET request, std::string& data) { DWORD readed = 0; char buffer[1025]; do { ZeroMemory(buffer, 1025); InternetReadFile(request, buffer, 1024, &readed); buffer[readed] = '\0'; data += buffer; } while(readed); }