当前位置: 首页 > news >正文

wordpress数据互通网站优化软件排名

wordpress数据互通,网站优化软件排名,wordpress自定义广告插件,wordpress 做网站文章目录httplib介绍与安装使用案例httplib介绍与安装 C HTTP 库(cpp-httplib)是一个轻量级的 C HTTP 客户端/服务器库,它提供了简单的 API 来创建 HTTP 服务器和客户端,支持同步和异步操作。以下是一些关于cpp-httplib 的主要特…

文章目录

    • httplib介绍与安装
    • 使用案例

httplib介绍与安装

C++ HTTP 库(cpp-httplib)是一个轻量级的 C++ HTTP 客户端/服务器库,它提供了简单的 API 来创建 HTTP 服务器和客户端,支持同步和异步操作。以下是一些关于cpp-httplib 的主要特点:

1.轻量级:cpp-httplib 的设计目标是简单和轻量,只有一个头文件包含即可,不依赖于任何外部库。

2.跨平台:它支持多种操作系统,包括 Windows、Linux 和 macOS。

3.同步和异步操作:库提供了同步和异步两种操作方式,允许开发者根据需要选择。

4.支持 HTTP/1.1:它实现了 HTTP/1.1 协议,包括持久连接和管道化。

5.Multipart form-data:支持发送和接收 multipart/form-data 类型的请求,这对于文件上传非常有用。

6.SSL/TLS 支持:通过使用 OpenSSL 或 mbedTLS 库,cpp-httplib 支持 HTTPS 和 WSS。

7.简单易用:API 设计简洁,易于学习和使用。

8.性能:尽管是轻量级库,但性能表现良好,适合多种应用场景。

9.社区活跃:cpp-httplib 有一个活跃的社区,不断有新的功能和改进被加入。

安装

git clone https://github.com/yhirose/cpp-httplib.git

接口介绍

请求中包含请求方法,请求的资源路径,请求头部,请求正文和查询字符串。

struct Request
{std::string method;std::string path;Headers headers;std::string body;Params params;
};

响应中包含HTTP协议版本,响应状态码,响应状态码描述,响应头部,响应正文。

struct Response
{std::string version;int status = -1;std::string reason;Headers headers;std::string body;void set_content(const std::string &s,const std::string &content_type);void set_header(const std::string &key,const std::string &val);
};   

服务器句柄,通过GET/POST/PUT/DELETE函数处理对应的HTTP请求,设置请求路径和对应的回调函数即可,通过listen函数进行对应端口的监听。

class Server
{using Handler = std::function<void(const Request&, Response&)>;Server &Get(const std::string &pattern, Handler handler);Server &Post(const std::string &pattern, Handler handler);Server &Put(const std::string &pattern, Handler handler);Server &Delete(const std::string &pattern, Handler handler);bool listen(const std::string &host, int port);
};

客户端句柄同样也是GET/POST/PUT/DELETE发起对应的请求,参数为请求路径,请求正文和请求的类型。

class Client
{explicit Client(const std::string &host, int port);Result Get(const std::string &path, const Headers &headers);Result Post(const std::string &path, const std::string &body,const std::string &content_type);Result Put(const std::string &path, const std::string &body,const std::string &content_type);Result Delete(const std::string &path, const std::string &body,const std::string &content_type);
};

使用案例

main.cc

#include "../common/httplib.h"
#include <iostream>int main()
{httplib::Server server;// using Handler = std::function<void(const Request &, Response &)>;server.Get("/hello",[](const httplib::Request & req, httplib::Response & resp){std::cout << "method: " << req.method << std::endl;std::cout << "path: " << req.path << std::endl;std::string body = "<html><body><h1>Hello World</h1></body></html>";resp.set_content(body,"text/html");resp.status = 200;});server.listen("0.0.0.0",8080);return 0;
}

makefile

main:main.ccg++ -o $@ $^ -std=c++17 -lpthread.PHONY:clean
clean:rm -rf main

makefile```makefile
main:main.ccg++ -o $@ $^ -std=c++17 -lpthread.PHONY:clean
clean:rm -rf main

image-20250214203709570

http://www.dtcms.com/a/609083.html

相关文章:

  • 影楼微网站建设方案wordpress如何使用dplayer
  • 做淘宝网站买个模版可以吗免费体验服务器
  • 创新的广州做网站辽宁建设工程信息网保函保险服务
  • 谷歌做新媒体运营的网站互联网技术公司
  • 国家建设部官方网站投诉站长之家是干嘛的
  • 北京网站优化实战设计师的个人网页设计
  • 网站备案 多久html代码 wordpress
  • 工商网站查询企业信息武威wordpress 重定位
  • 如何用wordpress做视频网站网站优化建设苏州
  • 国内自适应网站开发平台价格
  • 实时seo排名点击软件石家庄网站优化公司
  • 整站排名网站代码制作软件
  • 石家庄网站建设外包网站备案信息如何下载
  • 查询网站访问量wordpress 侧滑
  • wordpress迁站广告品牌设计公司
  • 建设网站需要提前准备的条件建站优化信息推广
  • 南阳网站建设推广服务器里面如何做网站
  • 做外贸生意用哪个网站企业手机网站建设平台
  • 北京网站设计制作网站适合网站设计的gif图片
  • 哪里有建设网站中的视频想学室内设计在哪里学
  • 用单位的服务器做网站宝路华手表官方网站
  • 网站建设查询深圳创业补贴怎么申请
  • 上海做淘宝网站wordpress 首页无法访问
  • 网站建设优化服务新闻wordpress 数据库 编码
  • 无锡好的网站公司自贡企业网站建设公司
  • 老外的网站怎么做网站建设方案哪家好 推荐
  • dw网站建设流程wordpress原创
  • 做电子签章登录哪个网站漳州seo顾问
  • 为什么要给企业建设网站?用分布式做的网站
  • 网站登录 退出怎么做南京制作网页培训学校