请教如何解决Poco http上传文件ConnectionResetException

小艾Druid 2014-04-16 03:48:23
大家好:我是一个C++开发新手,在使用poco开发http上传文件工具时遇到了困难,希望有热心人士能帮我看看:
这个工具要求能实现本地文件上传到存储服务器,为了便于调试, 我暂时把url都写死了,本地路径跟踪下来也是确实有这个文件的(代码中的source),但在把本地文件流拷贝到发送请求返回的输出流时有Poco::Net::ConnectionResetException这个异常,查了几天也没找到原因,建立连接getConnect()应该都是正常的,因为从上面下载文件到本地是正常的。就是想不通流拷贝的时候为什么要再次重置连接,然后再往下就出现连接被终止的异常了。望高手能指点一下。谢谢。
void RESTSession::UploadFile(const std::string& source,
const std::string& target)
{
try
{
std::string strURI = "http://pacstest.pacs.hcp.kstwinning.com/rest/hcptest/110888.dcm";
Poco::URI uri(strURI);
std::string path(uri.getPath());
RESTSessionPtr rest = impl->getConnect();


HTTPRequest req(Poco::Net::HTTPRequest::HTTP_PUT, path, Poco::Net::HTTPMessage::HTTP_1_1);
std::ifstream ifs(source.c_str(),std::ios::binary);
std::ostream& outs = rest->sendRequest(req);
Poco::StreamCopier::copyStream(ifs, outs);
HTTPResponse resp;
rest->receiveResponse(resp);
}
catch(RESTException& exp)
{
}
}
...全文
812 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

3,882

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧