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

前端八股浏览器网络(1)---响应头

一、什么是响应头响应头是 HTTP 响应中服务器向浏览器传递的附加信息用于描述响应数据类型、缓存策略、跨域权限、Cookie 设置等不包含实际业务数据。HTTP 响应结构 ┌─────────────────────────────────────────┐ │ 状态行HTTP/1.1 200 OK │ ├─────────────────────────────────────────┤ │ 响应头 │ │ Content-Type: application/json │ │ Cache-Control: max-age3600 │ │ Access-Control-Allow-Origin: * │ ├─────────────────────────────────────────┤ │ 空行 │ ├─────────────────────────────────────────┤ │ 响应体{code:200,data:{...}} │ └─────────────────────────────────────────┘二、核心响应头详解1. Content-Type内容类型作用告诉浏览器当前返回的数据是什么格式浏览器根据它决定如何解析内容。Content-Type说明使用场景application/jsonJSON 数据前后端分离接口最常用application/x-www-form-urlencoded表单格式普通表单提交multipart/form-data混合格式文件上传text/htmlHTML 页面网页返回text/plain纯文本普通文本image/png、image/jpeg图片图片资源application/octet-stream二进制流文件下载# 示例 Content-Type: application/json; charsetutf-8 Content-Type: multipart/form-data; boundary----WebKitFormBoundary2. Cache-Control缓存控制作用控制浏览器如何缓存响应。值说明no-cache每次都要去服务器协商缓存能用缓存才用no-store真正不缓存每次都全新请求max-age3600缓存 3600 秒public允许任何中间节点缓存CDN、代理private只允许浏览器缓存must-revalidate缓存过期后必须重新验证# 示例 Cache-Control: no-cache Cache-Control: max-age3600, public Cache-Control: private, max-age864003. Access-Control-Allow-Origin跨域核心作用告诉浏览器允许哪些域名访问资源解决跨域问题。# 允许所有域名不推荐不安全 Access-Control-Allow-Origin: * # 允许指定域名 Access-Control-Allow-Origin: https://example.com # 允许携带 Cookie 时必须具体域名 Access-Control-Allow-Origin: https://example.com Access-Control-Allow-Credentials: true4. Set-Cookie设置 Cookie作用服务器告诉浏览器设置 Cookie。Set-Cookie: namevalue; Path/; ExpiresWed, 21 Oct 2025 07:28:00 GMT; HttpOnly; Secure; SameSiteLax属性说明属性说明HttpOnlyJS 无法读取防 XSS 攻击Secure只在 HTTPS 下传输SameSite防 CSRF 攻击Strict/Lax/NoneExpires/Max-Age过期时间PathCookie 生效路径DomainCookie 生效域名5. Content-Length内容长度作用告诉浏览器响应体的字节长度。Content-Length: 3486. Location重定向地址作用配合 301/302 状态码告诉浏览器跳转到哪个地址。HTTP/1.1 302 Found Location: https://www.example.com/new-page7. Content-Disposition文件下载作用告诉浏览器这是下载文件不是直接打开。# 内联显示默认 Content-Disposition: inline # 附件下载 Content-Disposition: attachment; filenamereport.pdf # 中文文件名需要编码 Content-Disposition: attachment; filename*UTF-8%E6%8A%A5%E5%91%8A.pdf8. ETag / Last-Modified协商缓存作用配合 If-None-Match / If-Modified-Since 实现协商缓存。ETag: 33a64df551425fcc55e4d42a148795d9f25f89d4 Last-Modified: Wed, 21 Oct 2025 07:28:00 GMT三、面试高频问题1. 跨域相关必考Q前端跨域报错一般是哪个响应头没配AAccess-Control-Allow-Origin。没有这个头浏览器会拦截响应报 CORS 错误。Q带 Cookie 跨域要哪些响应头AAccess-Control-Allow-Origin不能为*必须具体域名Access-Control-Allow-Credentials: true2. 缓存相关高频QCache-Control: no-cache 和 no-store 区别Ano-cache不是不缓存是每次都要去服务器协商缓存能用缓存才用no-store真正不缓存每次都全新请求Q协商缓存靠哪两个响应头AETag和Last-Modified配合请求头的If-None-Match和If-Modified-Since。3. Cookie 相关Q服务器怎么种 CookieA通过响应头Set-Cookie。QSet-Cookie 里 HttpOnly 是什么意思AJS 无法读取该 Cookie只能浏览器自动携带防止 XSS 攻击。4. 文件下载/导出Q前端实现文件下载后端要加什么响应头AContent-Disposition: attachment; filenamexxx.xlsx告诉浏览器这是下载文件不是直接打开。5. Content-Type必问Q常见的 Content-Type 有哪些Aapplication/json接口数据application/x-www-form-urlencoded普通表单multipart/form-data文件上传text/html网页6. 重定向Q301/302 跳转靠哪个响应头ALocation值是跳转地址。四、响应头分类记忆分类响应头作用格式类型Content-Type告诉浏览器数据格式缓存控制Cache-Control控制缓存策略跨域Access-Control-Allow-Origin解决跨域CookieSet-Cookie服务器种 Cookie重定向Location跳转地址文件下载Content-Disposition触发下载协商缓存ETag / Last-Modified判断文件是否变化长度Content-Length响应体字节数五、快速记忆响应头常考八个 Content-Type 格式类型 Cache-Control 缓存控制 Access-Control 跨域核心 Set-Cookie 种 Cookie Location 重定向 Content-Disposition 文件下载 ETag 协商缓存 Last-Modified 协商缓存 面试口诀 跨域找 Access-Control 缓存看 Cache-Control 格式问 Content-Type 下载找 Content-Disposition六、完整示例HTTP/1.1 200 OK Content-Type: application/json; charsetutf-8 Content-Length: 348 Cache-Control: max-age3600, public Access-Control-Allow-Origin: https://example.com Access-Control-Allow-Credentials: true ETag: 33a64df551425fcc55e4d42a148795d9f25f89d4 Set-Cookie: sessionIdabc123; Path/; HttpOnly; Secure; SameSiteLax { code: 200, message: success, data: {} }

相关文章:

前端八股浏览器网络(1)---响应头

一、什么是响应头?响应头是 HTTP 响应中,服务器向浏览器传递的附加信息,用于描述响应数据类型、缓存策略、跨域权限、Cookie 设置等,不包含实际业务数据。HTTP 响应结构: ┌─────────────────────…...

AutoGLM-Phone-9B性能优化:让移动端推理速度提升30%的技巧

AutoGLM-Phone-9B性能优化:让移动端推理速度提升30%的技巧 1. AutoGLM-Phone-9B模型概述 AutoGLM-Phone-9B是一款专为移动设备优化的多模态大语言模型,在保持强大理解能力的同时,通过多项技术创新实现了高效的移动端推理。该模型基于GLM架构…...

基于Cosmos-Reason1-7B的网络安全威胁情报自动分析与报告生成

基于Cosmos-Reason1-7B的网络安全威胁情报自动分析与报告生成 每天一上班,安全运营中心(SOC)的分析师小李就要面对成百上千条安全告警、几十份漏洞报告和来自四面八方的威胁情报。他需要像侦探一样,从这些海量的、非结构化的文本…...

终极鼠标键盘自动化:开源免编程录制工具完全指南

终极鼠标键盘自动化:开源免编程录制工具完全指南 【免费下载链接】KeymouseGo 类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input 项目地址: https://gitcode.com/gh_mirrors/ke/KeymouseGo 还在为每天重复…...

手把手教你用STM32F103C8T6打造百元级环境监测手表(含BME280传感器驱动避坑指南)

手把手教你用STM32F103C8T6打造百元级环境监测手表(含BME280传感器驱动避坑指南) 在创客圈里,用低成本硬件实现高价值功能一直是令人兴奋的挑战。本文将带你用STM32F103C8T6这颗性价比之王,配合BME280环境传感器,打造一…...

屡刷高分却不实用?南大团队揭示最强模型实际仅得49分

现有大模型评测分数日趋饱和,但与真实体验差距显著。南京大学傅朝友团队牵头,在 Google Gemini 评测团队邀约下推出视频理解新基准 Video-MME-v2。凭借创新的分层能力体系与组级非线性评分,以及 3300 人工时高质量标注,揭示模型与…...

亚洲美女-造相Z-Turbo部署案例:高校AI实验室私有化部署,支撑30+学生并发使用

亚洲美女-造相Z-Turbo部署案例:高校AI实验室私有化部署,支撑30学生并发使用 最近和一所高校AI实验室的老师聊天,他们遇到了一个挺有意思的难题。实验室有30多个学生,课程项目需要用到文生图模型来生成特定风格的图片,…...

MusePublic Art Studio效果实测:1024x1024输出在主流NVIDIA显卡表现

MusePublic Art Studio效果实测:1024x1024输出在主流NVIDIA显卡表现 1. 引言:当极简美学遇上高清渲染 想象一下,你有一个绝妙的创意画面在脑海中盘旋,但你不是程序员,也不想面对复杂的代码和命令行。你需要的&#x…...

湿度计算常数γ:气象学中的隐藏变量及其在农业灌溉中的实际应用

湿度计算常数γ:农业精准灌溉中的关键变量与实战应用 清晨五点,当第一缕阳光穿透薄雾洒在麦田上,土壤中的水分正以肉眼不可见的方式与空气进行着微妙交换。这种被称为"潜在蒸散"的过程,正是决定作物需水量的核心机制。而…...

国标GBT 28181实战解析:第三方呼叫控制在跨平台历史视音频回放中的关键实现(GB/T28181-2022)

1. 第三方呼叫控制机制在GB/T28181-2022中的核心价值 第一次接触国标GB/T28181的开发者,往往会被其复杂的协议栈和交互流程吓退。但当我真正在跨厂商视频监控项目中实施第三方呼叫控制时,才发现这套机制的精妙之处。想象一下这样的场景:某大型…...

【网络实战】跨越交换机的VLAN对话:Trunk链路配置全解析

1. 为什么需要Trunk链路? 想象一下你在一栋写字楼里办公,市场部在3楼,财务部在5楼。虽然两个部门在不同楼层,但同部门同事之间需要频繁传递文件。如果每层楼的交换机只能处理本层的网络流量,就像每层楼单独配备文件柜&…...

Ostrakon-VL-8B一文吃透:从模型架构、ShopBench构建到vLLM适配全链路

Ostrakon-VL-8B一文吃透:从模型架构、ShopBench构建到vLLM适配全链路 你是不是也遇到过这样的场景:想找一个能真正看懂零售店铺图片的AI助手,却发现市面上的通用模型要么识别不准,要么回答不专业?比如,你拍…...

暗黑3鼠标宏工具D3KeyHelper:告别手酸,解放双手的游戏助手

暗黑3鼠标宏工具D3KeyHelper:告别手酸,解放双手的游戏助手 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 还在为暗黑破坏神3…...

Qwen3-VL-4B Pro从零开始:基于Streamlit的现代化WebUI定制化部署

Qwen3-VL-4B Pro从零开始:基于Streamlit的现代化WebUI定制化部署 1. 项目概述 想不想让电脑不仅能看懂图片,还能跟你聊图片里的内容?Qwen3-VL-4B Pro就是这样一个神奇的工具。它基于阿里通义千问的最新视觉语言模型,能够理解图片…...

如何轻松获取八大网盘直链下载地址:终极免费下载助手指南

如何轻松获取八大网盘直链下载地址:终极免费下载助手指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天…...

电感饱和电流测试基础—原理、意义与核心判定标准

在电源管理、DC-DC 变换器、滤波电路等电子系统中,电感是承担储能、滤波、升降压核心功能的关键被动元件。而 ** 饱和电流(Isat)** 作为电感最核心的极限参数之一,直接决定了电感在大电流工况下能否稳定工作。准确测试饱和电流&am…...

医学影像AI新突破:拆解MedSegDiff-V2如何用‘频域魔法’解决分割边界模糊难题

医学影像AI新突破:拆解MedSegDiff-V2如何用‘频域魔法’解决分割边界模糊难题 当医生面对一张模糊的脑部MRI影像时,肿瘤与正常组织的分界线往往如同雾里看花。这种边界模糊问题长期困扰着医学影像分析领域,尤其在器官移植规划、肿瘤体积测算等…...

Qwen3.5-2B模型实战:YOLOv11新特性解读与项目迁移指南

Qwen3.5-2B模型实战:YOLOv11新特性解读与项目迁移指南 1. YOLOv11技术亮点解析 目标检测领域最近迎来了一位重量级选手——YOLOv11。作为YOLO系列的最新成员,它在前代基础上做了不少有意思的改进。用Qwen3.5-2B模型分析后发现,这些变化主要…...

终极Windows快捷键冲突检测指南:Hotkey Detective完全使用教程

终极Windows快捷键冲突检测指南:Hotkey Detective完全使用教程 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective …...

PVE虚拟化部署OpenWRT旁路由:从镜像转换到网络配置全解析

1. 为什么选择PVEOpenWRT旁路由方案 最近两年软路由越来越火,很多朋友都在问要不要把家里的硬路由换成软路由。其实完全没必要这么折腾,用PVE虚拟化跑OpenWRT做旁路由才是更优雅的解决方案。我去年给公司办公室部署了这个方案,到现在稳定运行…...

FF14副本动画跳过插件:5分钟快速配置指南,告别冗长等待

FF14副本动画跳过插件:5分钟快速配置指南,告别冗长等待 【免费下载链接】FFXIV_ACT_CutsceneSkip 项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_ACT_CutsceneSkip FF14副本动画跳过插件是专为《最终幻想14》国服玩家设计的智能工具&#…...

增强现实AR云的空间计算与持久化存储方案

增强现实AR云的空间计算与持久化存储方案 随着增强现实(AR)技术的快速发展,AR云作为支撑大规模、多用户协同体验的核心基础设施,正成为行业关注的焦点。AR云通过空间计算与持久化存储技术,将虚拟内容与物理世界无缝融…...

3分钟完成原神成就导出:YaeAchievement完整指南与快速入门

3分钟完成原神成就导出:YaeAchievement完整指南与快速入门 【免费下载链接】YaeAchievement 更快、更准的原神数据导出工具 项目地址: https://gitcode.com/gh_mirrors/ya/YaeAchievement 还在为手动记录原神成就而烦恼吗?每次想要整理自己的成就…...

离线语音识别 Vosk 入门指南:开源、轻量、告别网络依赖

语音识别还是挺重要的,常用的比如现在语音输入法啊,需要将你说话的声音转成文字,再比如手机上各种智能助手,还有就是让龙虾可以听懂你发的语音(目前我是通过Whisper来实现的)但是这些大多数都需要依赖云端服…...

如何用KeymouseGo彻底告别重复工作:免费鼠标键盘录制工具终极指南

如何用KeymouseGo彻底告别重复工作:免费鼠标键盘录制工具终极指南 【免费下载链接】KeymouseGo 类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | automate mouse clicks and keyboard input 项目地址: https://gitcode.com/gh_mirrors/ke/KeymouseGo …...

无人驾驶定位基石:轮速计差速模型与航迹推算的工程实践

1. 无人驾驶中的定位挑战与轮速计的价值 想象一下你开车进入地下车库,手机导航突然显示"GPS信号弱"时的场景。无人驾驶车辆面临同样的问题,但后果可能严重得多——失去精准定位意味着失去对环境的理解能力。这正是轮速计差速模型与航迹推算技术…...

Claude Code源码学习之上下文压缩(Compact)

Claude Code Compact 深度分析 本文档面向 Java 开发者,深度解析 Claude Code 的上下文压缩(Compact)体系设计。 源码路径:src/services/compact/ 分析版本:Claude Code 2.1.88 一、先澄清边界:compact 包 ≠ 全部记忆管理 很多人看到"上下文压缩"就以为这是 …...

向上管理核心三招(极简版)

不是拼命干活就行,而是要让领导 “看见你、认可你、愿意为你投入”。我帮你把核心逻辑和可直接用的话术整理成一份更精炼的职场向上管理手册,方便直接记、直接用:向上管理核心三招(极简版)一、适度麻烦领导・富兰克林效…...

SecGPT-14B效果展示:对同一段Apache日志,输出3种专业视角(运维/安全/合规)

SecGPT-14B效果展示:对同一段Apache日志,输出3种专业视角(运维/安全/合规) 你有没有想过,一段看似普通的服务器日志,在不同专家的眼里,会看到完全不同的世界? 运维工程师看到的是系…...

别再用top了!用Linux内核自带的perf工具,5分钟定位线上服务CPU毛刺

告别top:用perf工具5分钟精准定位Linux服务CPU毛刺问题 凌晨3点,服务器告警铃声划破寂静——某核心服务的CPU使用率突然从15%飙升至98%,响应延迟突破秒级。运维团队迅速登录机器,习惯性输入top命令,却只看到"java…...