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

项目模块十五:HttpResponse模块

一、模块设计思路

存储HTTP应答要素,提供简单接口

二、成员变量

int _status;            // 应答状态码

unordered_map<string, string> _headers; // 报头字段

string _body;           // 应答正文

bool _redirect_flag;    // 是否重定向信息

string _redirect_url;   // 重定向路径

三、成员函数

1、构造函数

应答状态码200,默认不重定向

2、清空数据 void ReSet()

清空成员变量里面所有数据

3、添加报头字段 void SetHeader(const string &key, const string &val)

哈希表添加键值对

4、查询报头字段 bool HasHeader(const string &key) const

哈希表查询

5、获取报头字段 string GetHeader(const string &key) const 

查询并返回 val

6、设置重定向 void SetRedirect(const string &url, int status = 302)

重定向标志位改变,设置重定向路径,设置应答状态码,默认302暂时重定向

7、设置应答正文 void SetContent(const string &body, string &type)

设置应答正文,并设置报头字段 Content-Type

8、是否是长短连接 bool Close() const

只有报头字段 Connection 是 keep-alive 才是长连接,其他全是短连接

四、代码展示

http://www.lryc.cn/news/475622.html

相关文章:

  • 推荐一款优秀的pdf编辑器:Ashampoo PDF Pro
  • 【系统架构设计师】2024年上半年真题论文: 论模型驱动架构设计方法及其应用(包括解题思路和素材)
  • 国内短剧源码短剧系统搭建小程序部署H5、APP打造短剧平台
  • Java集合框架面试指南
  • 八、MapReduce 大规模数据处理深度剖析与实战指南
  • 开源免费的API网关介绍与选型
  • OpenCV视觉分析之目标跟踪(5)目标跟踪类TrackerMIL的使用
  • 二级列表联动
  • 「C/C++」C++ 标准库 之 #include<sstream> 字符串流库
  • 深入理解跨域资源共享(CORS)安全问题原理及解决思路
  • 【汽车租聘管理与推荐】Python+Django网页界面+推荐算法+管理系统网站
  • Linux常见指令大全(必要+知识点)
  • iOS用rime且导入自制输入方案
  • Linux 进程终止 进程等待
  • VBA 64位API声明语句第003讲
  • 【问题记录】解决VMware虚拟机中鼠标侧键无法使用的问题
  • Naive UI 级联选择器 Cascader的:render-lable怎么使用(Vue3 + TS)(鼠标悬停该条数据的时候展示全部内容)
  • vue元素里面的 js对象中,:style后面里属性名不支持这种带-的写法(background-color)
  • Git 常用命令与开发流程总结
  • 链表中插入新的节点
  • AUTOSAR从入门到精通-BswM模块(二)
  • Spring DispatcherServlet详解
  • JS | 软件制作的流程是什么?
  • 简单工厂模式
  • 【django】Django REST Framework 序列化与反序列化详解
  • 【Golang】Golang的Map的线程安全问题
  • 指向指针的指针+ 值传递的理解
  • CSS常用定位
  • 【Linux】从零开始使用多路转接IO --- select
  • ArcGIS Pro SDK (二十一)渲染