本文整理汇总了C++中acl::HttpServletRequest::getInputStream方法的典型用法代码示例。如果您正苦于以下问题:C++ HttpServletRequest::getInputStream方法的具体用法?C++ HttpServletRequest::getInputStream怎么用?C++ HttpServletRequest::getInputStream使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类acl::HttpServletRequest
的用法示例。
在下文中一共展示了HttpServletRequest::getInputStream方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: doUpload
bool http_servlet::doUpload(acl::HttpServletRequest& req,
acl::HttpServletResponse& res)
{
// 获得输入流
acl::istream& in = req.getInputStream();
acl::string buf;
bool finish = false;
//logger(">>>>>>>>>>read: %lld, total: %lld<<<<<",
// read_length_, content_length_);
// 读取 HTTP 客户端请求数据
while (content_length_ > read_length_)
{
if (in.read_peek(buf, true) == false)
break;
//if (buf.empty())
// break;
// printf(">>>size: %ld, space: %ld\r\n",
// (long) buf.size(), (long) buf.capacity());
if (fp_.write(buf) == -1)
{
logger_error("write error %s", acl::last_serror());
(void) doReply(req, res, "write error");
return false;
}
read_length_ += buf.size();
// 将读得到的数据输入至解析器进行解析
if (!finish && mime_->update(buf, buf.size()) == true)
finish = true;
}
if (in.eof())
{
logger_error("read error");
return false;
}
return true;
}