我正在将C ++ REST SDK用于小型控制台应用程序,以测试具有各种http查询的服务器。一切正常,除非服务器无效(因为它不存在),程序停止10秒然后崩溃。我在文档中找不到任何可以让我了解正在发生的事情。我可以处理其他所有情况,但我无法弄清楚如何事先检查服务器是否有效,以便我可以处理此错误。以下是代码中始终挂起的部分:
web::http::client::http_client newClient(queries[index], config);
web::http::http_response response = newClient.request(web::http::methods::GET).get();
我认为如果服务器无效,.get()不知道返回什么,这就是程序关闭的原因,但我不确定。请指出我如何解决这个问题的正确方向。
答案 0 :(得分:1)
web::http::http_response response = newClient.request(web::http::methods::GET).get();
- >您正在调用来自.get()
的后退值的request()
,这可能无效。所以你可能会尝试拆分如下:
_some_type_ request_result = newClient.request(web::http::methods::GET);
(您必须查找_some_type_
需要的内容)
检查request_result
,如果没问题,请致电:
request_result.get();
否则,请提供错误消息。