随笔小计-前端经常接触的http响应头(跨域CORS,性能-缓存-安全,token)

在前端开发中,响应头由后端或服务器设置,前端开发需要理解其含义,以便调试跨域,缓存,安全性能等问题。

1.CORS-跨域

响应头说明
Access-Control-Allow-Origin允许哪些源访问资源(如*https://your-site.com
Access-Control-Allow-Methods允许的 HTTP 方法(如GET, POST, PUT
Access-Control-Allow-Headers允许客户端发送的自定义请求头(如Authorization, Content-Type
Access-Control-Allow-Credentials是否允许携带凭证(如 cookie),设为trueAllow-Origin不能为*
Access-Control-Max-Age预检请求(OPTIONS)结果的缓存时间(秒)

Access-Control-Allow-Origin: *是 CORS(跨域资源共享) 机制中的一个关键 HTTP 响应头,用于告诉浏览器:该资源可以被任意源(origin)的网页访问。

Access-Control-Max-Age:当浏览器发起一个带自定义请求头使用PUT/DELETE方法发送JSON数据等,会先自动发送以OPTIONS预检请求到服务'跨域请求是否被允许',避免相同请求重复发送预检请求,设置时间控制缓存持续时间。

2.性能,缓存,安全

响应头类别作用说明前端注意事项
Connectionkeep-alive性能优化保持 TCP 连接复用,减少建连开销无需处理,浏览器自动管理
Content-Encodinggzip性能优化响应体使用 Gzip 压缩浏览器自动解压,确保服务器正确压缩文本资源
Content-Typetext/javascript;charset=UTF-8内容类型标识资源为 UTF-8 编码的 JavaScript确保编码一致,避免乱码;现代推荐application/javascript(但兼容)
Strict-Transport-Securitymax-age=31536000; includeSubDomains; preload安全强制浏览器 1 年内使用 HTTPS(含子域)⚠️ HTTP 请求将被拒绝,确保全站 HTTPS
Transfer-Encodingchunked传输机制分块传输(动态内容,无固定长度)浏览器自动处理,无需干预
X-XSS-Protection1; mode=block安全(旧)启用 XSS 过滤并阻断攻击页面📌 现代浏览器已弃用,应优先使用 CSP

Content-Encoding:响应体使用 Gzip 压缩

3.Authorization: Bearer <token>

请求头中用于传递身份认证凭证

认证方案示例说明
Bearer(最常用)Authorization: Bearer eyJhbGciOiJIUzI1NiIs...用于 JWT、OAuth 2.0 等 Token 认证。前端从登录接口获取 token 后,后续请求都携带此头。
BasicAuthorization: Basic dXNlcjpwYXNz用户名密码 Base64 编码(user:passdXNlcjpwYXNz)。仅限 HTTPS,不推荐用于 Web 前端。

使用fetch

const token = localStorage.getItem('access_token'); fetch('/api/user/profile', { method: 'GET', headers: { 'Authorization': `Bearer ${token}` } }) .then(res => res.json()) .then(data => console.log(data));

使用Axios

axios.get('/api/orders', { headers: { 'Authorization': 'Bearer ' + token } });

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1136552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IntelliJ IDEA 各版本

IntelliJ IDEA 各版本主要分为 社区版 和 终极版 两大系列&#xff0c;以下是详细区别&#xff1a; 一、主要版本类型 1. IntelliJ IDEA Community&#xff08;社区版&#xff09; 免费开源&#xff0c;遵循 Apache 2.0 许可证核心功能&#xff1a; Java SE 开发Kotlin 开发…

复杂背景下的OCR识别:CRNN模型的解决方案

复杂背景下的OCR识别&#xff1a;CRNN模型的解决方案 &#x1f4d6; 项目简介 在数字化转型加速的今天&#xff0c;OCR&#xff08;光学字符识别&#xff09;技术已成为信息自动化处理的核心工具之一。从发票扫描、证件录入到文档电子化&#xff0c;OCR 能够将图像中的文字内容…

热销榜单:2026年EOR名义雇主服务品牌排行榜,助力企业灵活用工的五大优势

EOR名义雇主正在成为现代企业灵活用工的重要选择。在2026年品牌排行榜中&#xff0c;各大服务提供商展现出其独特优势&#xff0c;帮助企业在国际市场上更有效地管理人力资源。EOR名义雇主服务不仅能够降低管理成本&#xff0c;还确保企业遵循各国法规&#xff0c;提升了用工的…

COMSOL二维仿真:电磁超声Lamb波在板材检测中的应用——适合新手入门学习使用

COMSOL二维仿真 电磁超声Lamb波对板材检测 适合新手入门学习使用电磁超声检测这玩意儿听起来挺玄乎&#xff0c;其实用COMSOL玩起来就跟搭积木差不多。今儿咱们就拿块铝板做实验&#xff0c;手把手教你用二维仿真抓Lamb波的尾巴。别慌&#xff0c;就算你昨天刚装好软件&#xf…

Thinkphp-Laravel+uniapp微信小程序的个人健康评估管理系统

目录个人健康评估管理系统摘要项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理个人健康评估管理系统摘要 该系统基于ThinkPHP或Laravel框架构建后端&#xff0c;结合UniApp开发微信小程序前端&#xff0c;实现个人健康数据的综合管理与评估。系统…

L298N电机驱动模块去耦电容配置实战案例

L298N驱动直流电机的电源“稳压秘籍”&#xff1a;去耦电容实战全解析你有没有遇到过这样的场景&#xff1f;代码写得滴水不漏&#xff0c;PID参数调得明明白白&#xff0c;结果电机一启动——主控芯片突然复位、串口通信断连、传感器数据乱跳。排查半天&#xff0c;程序没毛病…

成功案例|如何进行定岗定编体系设计?——华恒智信助力某度假村林果部科学配员与弹性用工实例

【导读】企业是否面临过这样的问题&#xff0c;不论怎么努力部门的投入和产出总是不能达到平衡&#xff1b;工作无法机械化以至于员工人数不够&#xff1b;企业的不知道怎么进行合理的人员配置&#xff0c;是应该内部管理还是外包出去&#xff1f;该度假村酒店目前就面临着这些…

用Sambert-HifiGan为游戏NPC添加生动语音对话

用Sambert-HifiGan为游戏NPC添加生动语音对话 引言&#xff1a;让NPC“说人话”——中文多情感语音合成的必要性 在现代游戏开发中&#xff0c;NPC&#xff08;非玩家角色&#xff09;不仅是任务传递者或背景填充物&#xff0c;更是构建沉浸式世界观的关键一环。然而&#xff0…

Java开发者也能玩转AI视频生成?手把手教你部署

Java开发者也能玩转AI视频生成&#xff1f;手把手教你部署 从零开始&#xff1a;Java背景工程师的AI实践之路 在传统企业级开发中&#xff0c;Java一直是后端服务、中间件和高并发系统的首选语言。然而随着AIGC浪潮席卷全球&#xff0c;越来越多开发者希望涉足AI领域——但面对…

在 ABAP Cloud 里优雅读取与解析 XML:用 sXML Reader 把接口数据落成结构化 ABAP

在接口世界里,JSON 很流行,XML 依旧很顽强:不少老牌企业系统、行业标准(例如某些主数据同步、报文交换、配置导出)、甚至部分厂商的批量接口仍以 XML 为核心载体。对 ABAP Cloud 开发者来说,麻烦点在于:你既要把 XML 读懂、读稳,还要尽量使用 released 的 ABAP Cloud A…

mysql用户名怎么看

要查看 mysql 中的用户名&#xff0c;可以使用以下方法&#xff1a;使用 show databases 命令查看数据库拥有者信息&#xff1b;使用 ps 命令查看正在运行的 mysql 进程&#xff1b;使用 whoami 命令查看当前操作系统用户名&#xff1b;查看 /etc/mysql/my.cnf 或 /etc/my.cnf …

2026必备!9个AI论文写作软件,助研究生轻松搞定论文格式与内容!

2026必备&#xff01;9个AI论文写作软件&#xff0c;助研究生轻松搞定论文格式与内容&#xff01; AI 工具如何改变论文写作的未来 在当今快节奏的学术环境中&#xff0c;研究生们面对论文写作的压力日益增大。从选题到格式规范&#xff0c;再到内容撰写和降重&#xff0c;每一…

在 ABAP Cloud 里优雅地调用 HTTP 服务:新一代 HTTP Client 全面实践与落地指南

引言:当 ABAP 开始频繁对话 BTP,HTTP 就不再是配角 在很长一段时间里,SAP 系统的集成主力更多是 RFC、IDoc、SOAP 这类经典通道。HTTP 当然一直存在,CL_HTTP_CLIENT 也能搜到海量示例,但它往往只在少数场景里登场:比如调用某个外部 REST 服务、或者做一些轻量的技术验证…

MySQL迁移到达梦:如何轻松、高质量完成迁移任务

前言 由于业务需求要求数据库国产化&#xff0c;近期需要将数据从mysql数据库中迁移到达梦数据库中。本次使用达梦新的数据库开发和管理工具–SQLark百灵连接进行迁移&#xff0c;我也是在官方社区里看到大家推荐抱着试试看的心态去下载的。惊喜的是&#xff0c;五步即可快速搞…

ubuntu下的交叉编译

查看系统框架&#xff1a; uname -m # 查看系统 CPU 架构 PC端默认安装GCC&#xff1a; 是X86_x64架构的&#xff1b; 开发板安装GCC&#xff1a; 是arm架构的&#xff1b; 因此在PC端使用默认的GCC编译的执行文件无法在arm开发板内执行&#xff1b; 或者提示&#xff1a;“…

IDEA如何使用 Swing 构建用户界面

IntelliJ IDEA的 UI Designer插件使您可以使用 Swing 库组件为您的应用程序创建图形用户界面 (GUI)。 使用 UI Designer&#xff0c;您可以快速创建在顶层容器中使用的对话框和控件组&#xff0c;例如 JFrame。 这些元素可以与您直接在 Java 代码中定义的组件共存。 在本教程中…

动态功耗调度让乡村医疗设备续航翻倍

&#x1f4dd; 博客主页&#xff1a;Jax的CSDN主页 目录动态功耗调度&#xff1a;乡村医疗设备续航的革命性突破 一、痛点&#xff1a;乡村医疗设备续航的系统性危机 二、破局&#xff1a;LLM驱动的动态功耗调度技术框架 三、实证效果&#xff1a;续航翻倍的乡村落地实践 四、挑…

研究考虑冷、热、电、气4种能源形式的综合能源系统,系统内含能源设备主要包括光伏电源、风力机组、...

研究考虑冷、热、电、气4种能源形式的综合能源系统&#xff0c;系统内含能源设备主要包括光伏电源、风力机组、燃气轮机和燃气锅炉&#xff1b;储能系统主要包括储电设备蓄电池、储热设备蓄热槽&#xff1b;能量转换设备包括余热锅炉、电锅炉、吸收式制冷机、电制冷机和电锅炉等…

在 ABAP Cloud 中优雅访问系统字段:一套可测试、可扩展的 System Context 方案

在很多 ABAP 项目里,SY / SYST 就像空气一样自然:拿当前用户、系统日期时间、语言、消息字段、SY-SUBRC……随手就用。但当你把代码搬到 ABAP Cloud,或者开始认真做 ABAP Unit,你会立刻感受到两个现实: 可用性在变化:部分系统字段在 ABAP Cloud 场景下会出现限制、告警,…

智能门禁系统:CRNN OCR识别身份证信息

智能门禁系统&#xff1a;CRNN OCR识别身份证信息 &#x1f4d6; 项目背景与技术挑战 在智能安防、身份核验和自动化办公等场景中&#xff0c;身份证信息的自动提取是实现高效服务的关键环节。传统的人工录入方式不仅效率低下&#xff0c;还容易因视觉疲劳或字迹模糊导致错误。…