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

山东电力建设河北分公司网站网站建设框架模板

山东电力建设河北分公司网站,网站建设框架模板,h5页面制作平台有哪些,wordpress 主题课堂前端如何利用 localStorage 存储 Token 及跨域问题解决方案 一、前言 前后端分离已经是现代 Web 开发的主流模式,在这一模式下,前端通常会通过接口与后端交互,完成数据请求、身份认证等功能。而在身份认证这一环节,前端通常会拿…

前端如何利用 localStorage 存储 Token 及跨域问题解决方案

一、前言

前后端分离已经是现代 Web 开发的主流模式,在这一模式下,前端通常会通过接口与后端交互,完成数据请求、身份认证等功能。而在身份认证这一环节,前端通常会拿到后端返回的 Token,用于后续请求的身份标识。

那么,前端拿到这个 Token 之后,通常是怎么存储的呢?很多人会选择 localStorage。今天我们就来详细聊聊它的原理使用方式,并顺便讲讲大家经常遇到的跨域问题以及解决方案。


二、什么是 localStorage

1️⃣ 定义

localStorage 是浏览器提供的一种本地存储机制,属于 Web Storage API。它用于在 客户端 本地保存少量的键值对数据。

2️⃣ 特点

特点说明
持久性数据永久保存在本地,除非用户手动清除浏览器缓存
同源策略协议、域名、端口都一致时才可访问
容量通常为 5MB 左右
数据类型所有数据最终都会被转为字符串保存

三、如何用 localStorage 存储 Token?

1️⃣ 存储代码示例

localStorage.setItem('token', 'your-token-string');

这段代码的作用是:

  • keytoken
  • valueyour-token-string
  • 作用域:只在当前域名有效,刷新页面数据依然存在

2️⃣ 读取代码示例

const token = localStorage.getItem('token');

3️⃣ 清除代码示例

localStorage.removeItem('token');
localStorage.clear(); // 清除所有

四、为什么需要存储 Token?

通常,后端在登录成功后会返回一个 Token(通常是 JWT),前端需要将其保存起来,在后续的请求中带上这个 Token,以便服务器知道「你是谁」。

请求示例:

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

Token 通常放在请求头的 Authorization 字段中。


五、为什么不直接放 Vuex 或 React 状态管理?

Vuex / Redux 等状态管理存储在内存中,页面刷新就消失了。
localStorage 是存储在浏览器本地,页面刷新也不会丢失

所以一般是登录成功后:

  • 存到 localStorage
  • 刷新页面重新从 localStorage 读取初始化 Vuex / Redux 状态

六、跨域问题与解决方案

1️⃣ 什么是跨域?

浏览器有同源策略,不同协议 / 域名 / 端口之间的请求默认会被拦截,出现如下报错:

Access to XMLHttpRequest at 'http://api.xxx.com' from origin 'http://localhost:8080' has been blocked by CORS policy.

为什么拦截?
为了防止恶意网站盗用用户信息。


2️⃣ 跨域的常见场景

  • 本地开发时:localhost:8080 请求 localhost:8081
  • 正式环境:www.a.com 请求 api.a.com

3️⃣ 跨域的解决方案

后端开启 CORS

最根本的解决方法是后端开启跨域请求:

Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Content-Type, Authorization
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS

如果你用的是 Spring Boot,代码示例:

@CrossOrigin
@RestController
@RequestMapping("/api")
public class DemoController {
}

代理解决跨域(开发环境常用)

通过前端代理转发:

// vue.config.js
module.exports = {devServer: {proxy: {'/api': {target: 'http://backend-server.com',changeOrigin: true,pathRewrite: { '^/api': '' }}}}
};

前端请求:/api/user
实际请求:http://backend-server.com/user


JSONP / iframe

仅限 GET 请求,现代项目很少用,不推荐。


Nginx 反向代理

生产环境统一网关,避免跨域,前端与后端统一域名。

location /api/ {proxy_pass http://backend-server.com/;
}

4️⃣ 跨域与 Token 的问题

如果你的跨域场景中涉及到登录态,后端必须支持:

  • CORS + Authorization
  • 或者基于 cookie,则要注意 withCredentials 设置
axios.defaults.withCredentials = true;

七、总结(重点记忆)

存储方式生命周期场景
localStorage永久,除非手动清理存储 Token、用户偏好
sessionStorage页面关闭失效临时数据
cookie有时效(服务器控制)登录状态 / 跨域传递状态

跨域根治办法:让后端配置 CORS


八、附:安全提醒

  • Token 建议短时有效、后端验证
  • 防 XSS 注入,避免被盗用
  • HTTPS 保证安全传输

关于 Token 的存储与跨域问题,理解了浏览器的工作原理,这些问题都不再神秘。
如果你还遇到跨域问题、Token 问题、或者想进一步了解 JWT / OAuth2 等安全机制,欢迎留言交流 👏。
Google chrome 跨域问题


文章转载自:

http://tffUjBae.stmkm.cn
http://IbfkH4aP.stmkm.cn
http://UA9XPLnR.stmkm.cn
http://d4oUnTOz.stmkm.cn
http://uVWMNvw7.stmkm.cn
http://Lp40jsGB.stmkm.cn
http://lRQWO5Er.stmkm.cn
http://suEYH3YB.stmkm.cn
http://99KXILPP.stmkm.cn
http://9mQLTzJr.stmkm.cn
http://pIaDSwgh.stmkm.cn
http://WIDzg0FJ.stmkm.cn
http://7WNDQ5AN.stmkm.cn
http://ZihW7Zyy.stmkm.cn
http://FL7zTvSa.stmkm.cn
http://7IffxXni.stmkm.cn
http://QhY2QqDn.stmkm.cn
http://Kl2IH7Ur.stmkm.cn
http://2QglNNUQ.stmkm.cn
http://tlzHRyVT.stmkm.cn
http://ZQPYfCM6.stmkm.cn
http://gtKJckqE.stmkm.cn
http://8QR2QeBr.stmkm.cn
http://ISVp7tfz.stmkm.cn
http://vFQbXqvB.stmkm.cn
http://m0YlIL9P.stmkm.cn
http://0E4pyILc.stmkm.cn
http://2noxSboj.stmkm.cn
http://aDsoHmBe.stmkm.cn
http://VtNYFPYZ.stmkm.cn
http://www.dtcms.com/wzjs/774460.html

相关文章:

  • 网站建设建设意见wordpress列表分页 js
  • 原阳县建站塔山双喜计算机专业学什么
  • 南宁网站排名优化电话php做网站访问记录
  • 全国较好的网站建设公司百度sem运营
  • 软文代发广州seo网络推广员
  • 丹东电信网站备案惠州seo公司
  • 哪里可以做寄生虫网站yy直播能赚钱吗
  • 我的世界搞头怎么做的视频网站合肥网站制作建设
  • 广州做网站哪间公司好seo网络推广什么意思
  • 做棋牌推广网站违法不江苏建设职业技术学院
  • 做网站网站需要注意什么网页开发基础答案
  • 重庆好的网站建设装饰网站卧室做炕百度
  • 好点子网站建设做网站的人搞鬼少首页文件
  • 零六年自助建设网站个人网站备案简介
  • 有人做网站吗上海工厂网站建设
  • 表白墙网站怎么做商丘房产网
  • 东兴网站建设岳阳建设网站
  • 沙坪坝集团网站建设对搜索引擎优化的认识
  • 温州免费建站建设网站需要什么内容
  • 哪里有做企业网站的平台经济是什么意思
  • 做网站可以用什么语言花茶网站模板
  • 如何搭建php视频网站文创网站
  • 体育类网站模板做一个公司网站的费用
  • 橱柜衣柜做网站廊坊网站快照优化公司
  • 镇江网页制作重庆网站建设优化排名
  • 网站移动页面怎么做专门做爬虫的网站
  • 示范校建设平台网站网络品牌营销
  • 阜宁网站设计在线制作网站系统
  • 安卓网站客户端制作软件资阳seo快速排名
  • 电脑在哪里制作网站下列关于网站开发