本文整理汇总了C++中HTTPClient::setTimeout方法的典型用法代码示例。如果您正苦于以下问题:C++ HTTPClient::setTimeout方法的具体用法?C++ HTTPClient::setTimeout怎么用?C++ HTTPClient::setTimeout使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HTTPClient
的用法示例。
在下文中一共展示了HTTPClient::setTimeout方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char** argv)
{
if (argc < 3)
return usage(argc, argv);
const long timeout = lexicalCast<long>(argv[1]);
SocketModule Module;
try
{
for (int args = 2; args < argc; ++args)
{
std::string targetResource(argv[args]);
HTTPClient<> client;
client.setKeepAliveTime(300);
client.setTimeout(timeout, 1);
client.setUserAgent("Mozilla/4.0 (compatible; MSIE 6.0; "
"Windows NT 5.1; SV1; .NET CLR 1.0.3705; "
".NET CLR 1.1.4322)");
client.setAcceptEncoding("");
client.addAcceptLanguage("ja");
client.addAcceptLanguage("en");
HTTPResult<> result = client.getResource(targetResource.c_str());
std::cout << "headers: " <<
result.getResponseHeaders().toString() << std::endl;
std::vector<unsigned char> resource = result.getResource();
std::ofstream ofs("savefile.html",
std::ios::out |
std::ios::binary |
std::ios::trunc);
std::vector<unsigned char>::const_iterator itor =
resource.begin();
while (itor != resource.end())
ofs << *itor++;
ofs.close();
}
} catch (ResponseError& e) {
std::cout << " raise exception. reason: " <<
e.what() << std::endl;
} catch (ConnectionClosedException& /*e*/) {
std::cout << "connection closed by forign host." << std::endl;
} catch (SocketException& /*e*/) {
std::cout << "target server is not found. ";
} catch (std::exception& e) {
std::cout << "raise exception. reason: " <<
e.what() << std::endl;
}
return 0;
}