HTTP服务器>使用cpphttplib实现

2023-05-16

环境:Linux & CentOS7

cpphttplib是一个跨平台C++开发库,也可以在windows下使用,【github地址】

  • 以下是使用httplib库简单的实现了http服务器,Linux下需要关闭防火墙,如果使用阿里云服务器则需要在阿里云控制台添加可用服务端口,1024以下端口只能使用root权限启动
#include"httplib.h"

const char* CONTENT_TYPE = "application";

int main() {
	using namespace httplib;

	Server server;

	server.Get(R"(/hi)", [&](const Request& req, Response& resp) {//此处的R()是C/C++的转译技巧
		std::string str{"hello world!"};
		resp.status = 200;
		resp.set_content(str, CONTENT_TYPE);
		return;
	});

	server.listen("0.0.0.0", 9094);//0.0.0.0监听所有IP
	return 0;
}
  • 运行服务器,访问服务器的9094端口,发现服务器崩掉报错如下:
    是
    在windows10+Vs2015运行确是正常的,所以应该是环境的问题,使用的Lambda表达式时C++11新特性,而g++低版本是不支持C++11的所以要更新g++。

  • 资源的访问
    然后可以放一张图片到服务器上
    添加服务的资源根目录wwwroot目录

    server.set_base_dir("./wwwroot");
    

    访问http://192.168.157.128:9094/640.jpg就可以看到了//前提是服务器要打开
    同理http://192.168.157.128:9094/test.html就可以访问html页面了


相关链接
  • cpphttplib的github链接
  • C/C++的R()转译技巧
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTTP服务器>使用cpphttplib实现 的相关文章

随机推荐

  • 面试官:请设计一个能支撑百万连接的系统架构!

    目录 1 到底什么是连接 xff1f 2 为什么每次发送请求都要建立连接 xff1f 3 长连接模式下需要耗费大量资源4 Kafka遇到的问题 xff1a 应对大量客户端连接5 Kafka的架构实践 xff1a Reactor多路复用6 优
  • 二本学历5年经验的程序员,出去面试被碾压~

    目录 1 从一个求职案例引入2 学历差距 xff1a 面试官的第一印象3 公司背景差距 xff1a 你的人生名片4 技术差距 xff1a 硬核能力的欠缺5 架构能力的差距6 面试结果的分析 这篇文章 xff0c 聊一个很多人感兴趣的话题 x
  • 连你女朋友都能看懂的分布式架构原理!

    目录 从一个新闻门户网站案例引入推算一下你需要分析多少条数据 xff1f 黄金搭档 xff1a 分布式存储 43 分布式计算 这篇文章聊一个话题 xff1a 什么是分布式计算系统 xff1f 一 从一个新闻门户网站案例引入 现在很多同学经常
  • 面试官: 你们生产环境的JVM怎么设置的?

    前言 这篇文章 xff0c 给大家聊一个生产环境的实践经验 xff1a 线上系统部署的时候 xff0c JVM堆内存大小是越大越好吗 xff1f 先说明白一个前提 xff0c 本文主要讨论的是Kafka和Elasticsearch两种分布式
  • 我用笨办法啃下了一个开源项目的源码!

    目录 1 从最简单的源码开始 xff1a 别幻想一步登天 2 循序渐进 xff1a 先搞定底层依赖的技术 3 一定要以Hello World作为入口来阅读 4 抓大放小 xff0c 边写注释边画图 5 反复三遍 xff0c 真正理解源码 6
  • 面试官问我有没有分布式系统开发经验,我一脸懵圈…

    目录 从单块系统说起团队越来越大 xff0c 业务越来越复杂分布式出现 xff1a 庞大系统分而治之分布式系统所带来的技术问题一句话总结 xff1a 什么是分布式系统设计和开发经验补充说明 xff1a 中间件系统及大数据系统 前言 现在有很
  • 尴尬的面试现场:说说你们系统有多大QPS?系统到底怎么抗住高并发的?

    目录 1 尴尬的面试现场 xff1a 第一幕2 尴尬的面试现场 xff1a 第二幕3 别让你学的技术成为空中楼阁4 想方设法的 虐虐 自己 这篇文章 xff0c 给大家说一个同样是很多人都很迷惑的问题 xff0c 因为实在是太多同学来问我类
  • ESXi 快速复制虚拟机脚本

    在 ESXi 命令行中 xff0c 创建一个脚本 xff0c 用来快速复制虚拟机 xff0c 内容如下 xff1a 将以下脚本内容写入文件 copy sh xff0c 脚本和要复制的虚拟机文件夹在同一个目录中 xff08 平级 xff09
  • 面试屡次碰壁后,我是如何调整最终拿下一线大厂offer的?

    前言 这篇文章 xff0c 主要是聊聊很多同学面试过程中都有的一个担心 xff1a 如果我连续面挂了好几家公司 xff0c 是不是就代表其他公司就同样拿不到offer了 xff1f 首先说明 xff0c 答案绝对是否定的 本文笔者将从一个真
  • 老司机经验分享:生产级中间件系统架构设计实践

    目录 1 Master Slave架构2 异步日志持久化机制3 检查点机制 xff1a 定时持久化全量数据4 引入检查点节点5 总结 amp 思考 这篇文章 xff0c 给大家来聊一个生产级的中间件系统的架构设计实践 xff0c 希望给对中
  • 拜托,面试请不要再问我Spring Cloud底层原理

    添加VX xff1a ruyuan0220 xff0c 回复 xff1a CSDN xff0c 领取更多精品学习资料 xff01 目录 业务场景介绍 Spring Cloud核心组件 xff1a Eureka Spring Cloud核心组
  • 【性能优化之道】每秒上万并发下的Spring Cloud参数优化实战

    欢迎关注个人微信公众号 xff1a 石杉的架构笔记 xff08 id xff1a shishan100 xff09 周一至周五早八点半 xff01 精品技术文章准时送上 xff01 xff01 往期文章 1 拜托 xff01 面试请不要再问
  • 我的奇葩面试经历分享:喊价25K,HR 却给了30K。。。

    点击上方 石杉的架构笔记 xff0c 右上选择 设为星标 每日早8点半 xff0c 精品技术文章准时送上 往期文章 BAT 面试官是如何360 无死角考察候选人的 xff08 上篇 xff09 每秒上万并发下的Spring Cloud参数优
  • 中华石杉互联网Java进阶面试训练营【全网发布ing】

    写在前面 相信不少Java工程师的职业生涯中 xff0c 尤其在早期 xff0c 都或多或少经历过下面的场景 xff1a 公司规模小 xff0c 项目没有任何技术挑战 每天重复着CRUD的工作 xff0c 你也自黑为CRUD工程师 工作于外
  • vdd和vss有什么区别

    vdd和vss的区别是VDD表示器件内部的工作电压 xff0c VSS通常指电路公共接地端电压 对于数字电路来说 xff0c VDD是芯片的工作电压 xff0c VSS是接地点 xff0c 在场效应管中 xff0c VDD为漏极 xff0c
  • Django之密码加密

    1 注册 xff1a 在前端注册页面得到输入的用户名和密码 xff1a span class hljs preprocessor 得到用户名 span uname 61 request POST span class hljs keywor
  • linux查看修改线程默认栈空间大小(ulimit -s)

    解决方法1 xff1a linux查看修改线程默认栈空间大小 ulimit s xff08 ulimit xff1a 控制shell程序的资源 xff09 a 通过命令 ulimit s 查看linux的默认栈空间大小 xff0c 默认情况
  • C# 的静态多态性和动态多态性(学习心得 20)

    同一个行为 xff0c 具有多个不同表现形式或形态的能力 在面向对象编程范式中 xff0c 多态性往往表现为 34 一个接口 xff0c 多个功能 34 多态性可以是静态的或动态的 xff1a 静态多态性中 xff0c 函数的响应是在 编译
  • 通过minio operator在k8s中部署minio tenant集群

    1 概述 MinIO是kubernetes原生的高性能对象存储 xff0c 兼容Amazon的s3 API MinIO Operator是一个工具 xff0c 该工具扩展了k8s的api 可以通过minio operator在公有云和私有云
  • HTTP服务器>使用cpphttplib实现

    环境 xff1a Linux amp CentOS7 cpphttplib是一个跨平台C 43 43 开发库 xff0c 也可以在windows下使用 github地址 以下是使用httplib库简单的实现了http服务器 xff0c Li