相信大家都有实现http服务器的需求,可能只是实现基本接口,不需要大而全,这里有一个特别好的实现,麻雀虽小却五脏俱全。

纯头文件的实现,支持windows和Linux,使用极其方便,直接include一个头文件即可。

即有服务端,又有客户端,用c++11编写。

可以支持SSL,还可以支持ZIP压缩。真的是不可多得的好东西。

项目地址见: https://github.com/yhirose/cpp-httplib ,作者一直在维护,新加了很多功能特性。

server示例

R"(/numbers/(\d+))"  是/numbers/1 ,  /numbers/2  等等。。通配地址

#include <httplib.h>int main(void)
{using namespace httplib;Server svr;svr.Get("/hi", [](const Request& req, Response& res) {res.set_content("Hello World!", "text/plain");});svr.Get(R"(/numbers/(\d+))", [&](const Request& req, Response& res) {auto numbers = req.matches[1];res.set_content(numbers, "text/plain");});svr.Get("/stop", [&](const Request& req, Response& res) {svr.stop();});svr.listen("localhost", 1234);
}

client示例

httplib::Client cli("yahoo.com");auto res = cli.Get("/");
res->status; // 301cli.follow_location(true);
res = cli.Get("/");
res->status; // 200

极好用的c++ http server和client库相关推荐

  1. 玩转Spring Cloud之配置中心(config server config client)

    玩转Spring Cloud之配置中心(config server &config client)  本文内容导航: 一.搭建配置服务中心(config server) 1.1.git方式 1 ...

  2. firefox+linux+nginx搭建server与client通过证书双向认证环境

    项目中需要搭建一个server和client基于证书的双向认证环境.由我来做,我也不会. 经过一晚上的研究,基本摸清了(知其然不知其所以然).做下笔记. 基本环境: 1.安装nginx. 2.安装op ...

  3. Load balancer does not have available server for client

    最近在研究spring-cloud,研究zuul组件时发生下列错误:  Caused by: com.netflix.client.ClientException: Load balancer doe ...

  4. JVM Server与Client运行模式

    为什么80%的码农都做不了架构师?>>>    JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很 ...

  5. SQL Server native client与sqlcmd单独安装

    背景 我有一台虚拟机,想要连接sql server,但是又不想安装sql server怎么办. 方案 sql server有专门的访问客户端叫做sql server native client,然后还 ...

  6. mysql client dev_ubuntu下mysql安装(server、client、dev),开启、停止和重启,及常见错误...

    1. 在ubuntu下安装server和client很简单: (1)安装server apt-get install mysql-server 安装当中,会提示输入root账户的密码,按提示输入即可. ...

  7. HTTP:HTTP的server and client详细攻略

    HTTP:HTTP的server and client详细攻略 目录 设计思路 HTTP的server and client术语解释 1.服务器端指response 2.客户端指request 3.H ...

  8. 浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得Service Manager接口之路

    原文地址: http://blog.csdn.net/luoshengyang/article/details/6627260 在前面一篇文章浅谈Service Manager成为Android进程间 ...

  9. mysql数据实时同步:Canal安装部署、kafka安装、zk安装、mysql安装、Canal Server+Canal Client HA,Canal+mysql+Kafka,相关验证(学习笔记)

    目录 Canal安装部署 1.1. 服务器准备 1.2. 设置主机名并配置hosts 1.3. 免密设置 1.4. 设置ntp时间 1.5. 关闭防火墙 1.6. 关闭selinux 1.7. 安装J ...

  10. 搭建Apache Mina框架并实现Server与Client端的简单消息传递

    http://www.himigame.com/apache-mina/831.html :(作者新浪微博: @李华明Himi ) 转载自[黑米GameDev街区] 原文链接: http://www. ...

最新文章

  1. python二级考试答案分值_2018全国计算机二级考试内容 科目分值设置
  2. C# ASP.NET MVC 配置允许跨域访问
  3. Window10 NVIDIA显卡 Tensorflow 2.1 GPU 安装和测试
  4. java script数据类型_typescript 基本数据类型
  5. 如何将特定提交推送到远程,而不是之前的提交?
  6. 字体编辑器_三款好用的字体编辑器分享,让您拥有属于自己的字体
  7. 智能客户—ERP技术新方向
  8. 2022数学建模思路 - 案例
  9. java语言的入门开始介绍
  10. 机器学习:概念学习FIND-S算法C++实现
  11. abp The value could not be converted to a GUID:
  12. 关于北美信号T1和欧洲信号E1的计算
  13. amd显卡用黑苹果输出黑屏_AMD锐龙Ryzen系列黑苹果教程
  14. ( 22美赛C题)基于投资最优交易策略的研究(部分内容)
  15. Java项目:高校运动会管理系统(java+SSM+JSP+JS+jQuery+Mysql)
  16. KNN+Dense SIFT+手势识别
  17. 联邦学习在金融领域的发展和应用
  18. nor flash之写保护
  19. 目前大数据分析领域,主要面临的四大瓶颈
  20. python零基础入门教程(非常详细),从零基础入门到精通,看完这一篇就够了

热门文章

  1. React——插件集合
  2. bootbox api
  3. PPT要怎么做?需掌握的一些制作设计技巧
  4. 推荐几款比较好用的聊天机器人bot开发工具
  5. Google推出即时通讯软件Hello
  6. 【编程题 】年会抽奖(详细注释 易懂)
  7. 阿里云大学>【Python学习路线】Python语言基础自测考试 - 初级难度 | 包过关系列
  8. [Zcu106开发]离线环境下用Vitis搭建Zcu106嵌入式系统神经网络加速器踩坑实录
  9. 计算机财务模型管理实验内容,财务分析模型实验报告
  10. Yunxion资产监测设备中DCDC芯片选择