您当前的位置: 首页 >  服务器

qianbo_insist

暂无认证

  • 0浏览

    0关注

    399博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

简洁的c++http协议获取内容(二)--获取服务器图片

qianbo_insist 发布时间:2021-05-19 16:53:07 ,浏览量:0

1 需求 获取http server的图片

用http协议获取server上的图片,前面有文章使用socket直接获取http内容之一,链接如下: 简洁的c++http协议获取内容一 使用简洁的方式目的是为了减少使用其他库来放入程序,如果我们已经使用了boost的asio库,那么至少我们可以直接使用boost来获取图片。如果没有使用,读者可以看上一篇文章。

2 使用boost的asio 来获取图片,读者可以自行修正成异步获取,这里是同步获取

boost的asio有很多好处,不同于其他封装,可以使用同步,异步,协程方式获取,这里使用的是同步,调用一个函数返回图片内存和图片大小,当然,读者可以修改,这里只是一个demo。代码的原理如下:

  1. 发送http 头部信息
  2. 等待接收数据,获取http头部
  3. 解析头部信息,获取Content-Length
  4. 准备内存,接收数据
  5. 返回数据
show me the code
#include 
#include 
#include 
#include 
#include 

using boost::asio::ip::tcp;
using std::string;

//这里直接搜索http的头部字符串

int split_httphead(const std::string str,std::string &k,std::string &v)
{
	size_t pos = -1;
	for (size_t i = 0; i             
关注
打赏
1663161521
查看更多评论
0.0394s