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

HTTP请求头与响应头轻松懂(基础版+练习题)

HTTP请求头与响应头轻松懂(基础版+练习题)

HTTP的请求头和响应头,就像客户端和服务器“聊天”时的“小纸条”,用来传递关键信息。这篇笔记用大白话讲清最常用的头字段,新手也能看懂。

一、 请求头:客户端发给服务器的“小纸条”

请求头是浏览器(客户端)在发请求时,附带告诉服务器的信息,格式就是 字段名: 内容
常用的几个核心请求头:

  1. Host:告诉服务器要访问的网站域名,比如访问百度就写 Host: www.baidu.com,是HTTP/1.1必须带的。
  2. User-Agent:告诉服务器“我是什么浏览器/设备”,比如 User-Agent: Chrome浏览器,服务器会根据这个返回适配的页面。
  3. Cookie:存储用户的登录状态等信息,比如登录后下次访问,浏览器会自动带 Cookie: token=123,服务器就知道你是谁了。
  4. Content-Type:只有提交数据时(比如登录填表单)才用,告诉服务器提交的数据格式,比如 Content-Type: 表单格式

简单示例:登录请求的请求头

POST /登录 HTTP/1.1
Host: www.xxx.com
User-Agent: Chrome/120
Content-Type: 表单格式

账号=小明&密码=123456

二、 响应头:服务器发给客户端的“小纸条”

响应头是服务器返回数据时,附带告诉浏览器的信息,同样是 字段名: 内容 的格式。
常用的几个核心响应头:

  1. Content-Type:告诉浏览器“我给你的是什么数据”,比如 Content-Type: 网页文本,浏览器就会按网页渲染;如果是 Content-Type: PDF文件,就会触发下载。
  2. Set-Cookie:服务器给浏览器设置Cookie,比如登录成功后,服务器发 Set-Cookie: token=abc,浏览器就会存起来。
  3. Location:配合跳转功能,比如服务器返回 Location: www.baidu.com,浏览器就会自动跳转到百度。
  4. Cache-Control:告诉浏览器要不要缓存数据,比如 Cache-Control: 缓存1天,浏览器1天内再访问就不用重新下载。

简单示例:下载文件的响应头

HTTP/1.1 200 OK
Content-Type: PDF文件
Content-Disposition: 附件; 文件名=笔记.pdf

三、 实用小技巧(新手必看)

  1. Cookie加安全属性:服务器设置Cookie时,加 HttpOnly 属性,能防止恶意脚本偷Cookie,更安全。
  2. 隐藏服务器信息:生产环境中隐藏 Server 字段,避免泄露服务器型号,减少被攻击的风险。
  3. 跨域配置:如果前端和后端不在一个域名下,服务器要加 Access-Control-Allow-Origin: 允许的域名,否则浏览器会拦截请求。

四、 入门练习题(附答案)

选择题

  1. 下列哪个请求头是HTTP/1.1必须带的?()
    A. User-Agent B. Host C. Cookie
  2. 要让浏览器直接下载文件,主要靠哪个响应头?()
    A. Content-Disposition B. Cache-Control C. Location
  3. 防止JS偷Cookie的属性是?()
    A. Secure B. HttpOnly C. Max-Age

简答题

  1. 简述请求头里的 Cookie 和响应头里的 Set-Cookie 有什么区别?
  2. Content-Type 在请求头和响应头里的作用分别是什么?

答案

选择题:1.B 2.A 3.B
简答题

  1. Cookie 是浏览器发给服务器的,用来携带用户状态;Set-Cookie 是服务器发给浏览器的,用来让浏览器保存Cookie。
  2. 请求头的 Content-Type 告诉服务器“客户端提交的数据格式”;响应头的 Content-Type 告诉浏览器“服务器返回的数据格式”。
http://www.jsqmd.com/news/139566/

相关文章:

  • 探寻密封胶带优质厂家:南通众皓实力凸显
  • 基于Python+Django的框架的胶济铁路博物馆管理系统(源码+讲解视频+LW)
  • 尿液蛋白质组学:开启无创疾病诊断的“新钥匙”
  • 微信小程序uniapp-vue社区二手物品租赁系统springboot
  • fiddler中的 核心概念
  • 基于微信小程序的智慧校园管理系统(源码+讲解视频+LW)
  • 微信小程序uniapp-vue校园二手商城交易积分兑换38gw6
  • 微信小程序uniapp-vue社区养老护工服务预约评价系统
  • 计算机Java毕设实战-基于springboot的在线考试系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 企业工商注册排名大揭秘,靠谱选择看这里!
  • 如何选择密封胶带定制实力厂家?南通众皓
  • 微信小程序uniapp-vue校园二手商城交易评价系统
  • 基于AES的文件夹加密解密系统的设计与实现(源码+讲解视频+LW)
  • 微信小程序uniapp-vue社区大学生心理健康服务
  • 2025-12-25 全国各地响应最快的 BT Tracker 服务器(移动版)
  • 虹科一体化车载测试,实现多协议数据零丢包
  • AWS Trainium与SageMaker HyperPod加速音乐生成模型开发
  • 靠谱好用的丁基胶带厂家推荐:南通众皓胶粘制品有限公司
  • 【计算机毕业设计案例】基于springboot的学院失物招领平台的设计与实现物品分类、招领信息、寻物信息(程序+文档+讲解+定制)
  • CAN软件哪款好用?虹科HK-CoreTest PK PCAN-View
  • 基于Python+Django的BS架构的球类赛事发布和在线购票系统(源码+讲解视频+LW)
  • 微信小程序uniapp-vue同学会学生会活动经费系统
  • 微信小程序uniapp-vue社区防控代办跑腿系统
  • 【计算机毕业设计案例】基于springboot的在线考试系统的推荐(程序+文档+讲解+定制)
  • java map<String,List>判断是否有key,get(key.add(x),否则put(key,new list(){x})的新写法
  • 计算机毕业设计springboot高考志愿推荐算法及其应用系统 SpringBoot框架下基于大数据的高考志愿智能匹配与可视化系统 面向新高考改革的Java志愿推荐引擎与线上辅助填报平台
  • 口碑与实力兼具:丁基胶带供应商的优质选择
  • HTTP中的四次挥手
  • 微信小程序uniapp-vue祛痘美容减肥个人健康交流打卡
  • 禅道的操作与抓包