- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 poco 时遇到了一个奇怪的问题。我可以很好地构建它,并将其链接到测试应用程序。但是,当我下载一个 url 时,无论我使用什么 url,它都会报告 HostNotFound 异常。该文件可以在任何地方的隐身浏览器中访问,并且可以在 dns 中解析....我有点不知所措...有什么想法吗?
//机器上的 dns 显示错误nslookup s3.amazonaws.com服务器:未知地址:192.168.0.1
非权威回答:名称:s3-1.amazonaws.com地址:72.21.215.196别名:s3.amazonaws.com s3.a-geo.amazonaws.com
// calling helper
CString host("http://s3.amazonaws.com");
CString path("/mybucket.mycompany.com/myfile.txt");
CString errmsg;
CString data = GetURL(host,path,errmsg);
// poco helper code
CString GetURL(CString host, CString path_query, CString &debmsg)
{
debmsg = CString("");
try
{
// convert request
std::string tmphost((LPCTSTR)host);
std::string tmppath((LPCTSTR)path_query);
// creation session and request
HTTPClientSession session(tmphost,80);
// disable proxy
session.setProxyHost("");
HTTPRequest req(HTTPRequest::HTTP_GET,tmppath,HTTPMessage::HTTP_1_1);
// send request
session.sendRequest(req);
// get response
HTTPResponse res;
std::istream * response = &session.receiveResponse(res);
// convert it back to mfc string
streambuf *pbuf = response->rdbuf();
std::ostringstream ss;
ss << pbuf;
CString data(ss.str().c_str());
return data;
}
catch (Poco::Exception& ex)
{
CString err(ex.displayText().c_str());
debmsg.Format("error getting url: %s%s err: %s",host,path_query,err);
}
return CString("<error>");
}
最佳答案
刚刚遇到了类似的问题。请注意,您的主机名是 "http://s3.amazonaws.com"
。
主机 的实际名称是“s3.amazonaws.com”
。 "http://"
部分指定了协议(protocol)。 HTTPClientSession
类无论如何只能用于 http 协议(protocol)。
在我的例子中,剥离 “http://”
并仅使用实际的主机名工作正常:“s3.amazonaws.com”
:
HTTPClientSession session("s3.amazonaws.com");
(好吧,在我的例子中是 "http://ws.audioscrobbler.com"
,但这不是重点)。可能为时已晚,无法确定这是否真的是您问题的答案,该错误看起来确实与我的有所不同,但希望它可以帮助像我一样通过搜索到达这里的人。
关于visual-c++ - poco httpclientsession 给出主机未找到错误,即使主机已解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19776324/
HTTPClientSession session(uri.getHost(), uri.getPort()); HTTPRequest req(HTTPRequest::HTTP_GET, path
使用 HTTPClientSession 的常用示例代码如下所示: Poco::Net::HTTPClientSession session(uri.getHost(), uri.getPort())
我在使用 poco 时遇到了一个奇怪的问题。我可以很好地构建它,并将其链接到测试应用程序。但是,当我下载一个 url 时,无论我使用什么 url,它都会报告 HostNotFound 异常。该文件可以
我用 Java 编写了一个 HTTP 服务器,用 Poco 用 C++ 编写了一个客户端。这是 C++ 客户端代码的一部分: URI uri("http://127.0.0.1:4444"); HTT
我最初的尝试是获取套接字并在构建后将其设置为无延迟。 client_session.socket().setNoDelay(true); 扔了 terminate called after throw
尝试使用 JSON 将 POST 方法发送到服务器。但是,服务器还需要 model、platform 和 platform version 作为请求的 header 。如何将这些 header 添加到
所以我正在开发一个服务器端 Nodejs/expressjs 应用程序和一个客户端 c++/Poco 应用程序。我设法在托管服务器的位置和客户端之间创建了一个 session 。但是,每当我尝试发送我
我有两个版本的代码: // HTTP.h class HTTP { private: //unique_ptr session; HTTPCli
我有一段简单的代码连接到一个基本的 HTTP 服务器,它总是返回一个纯文本 JSON 字符串。在我升级到 gcc 4.8 以访问 c++11 功能之前,我一直使用 Poco::net 库。我尝试过各种
我是一名优秀的程序员,十分优秀!