| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> JavaScript知识库 -> cookie具体配置方法+axios具体配置方法 -> 正文阅读 |
|
|
[JavaScript知识库]cookie具体配置方法+axios具体配置方法 |
cookie配置项第一步 执行命令 npm install js-cookie 第二步 在根目录的untils文件夹下面新建auth.js文件 第三步 auth.js文件的内容 1.引入Cookies 2.定义存储的名字 3.调用cookie中自带的方法 a.Cookies.get:获取保存的值 b.Cookies.set:设置新的值 c.Cookies.remove:删除cookies里面的值 4.抛出用自带方法定义的函数 import Cookies from 'js-cookie'
?
const TokenKey='token'
?
// 获取token的方法
export function getToken(){
?return Cookies.get(TokenKey)
}
// 设置token
export function setToken(token){
?return Cookies.set(TokenKey,token)
}
// 删除cookies里的token
export function removeToken(){
?return Cookies.remove(TokenKey)
}
第四步 在页面中用import引入调用即可使用cookie 注意:需要设置cookie过期时间或者完成后删除保存的 cookie值,防止内存泄漏 axios的基本封装axios官方网站axios官网GitHub - axios/axios: Promise based HTTP client for the browser and node.js 中文文档axios中文文档|axios中文网 | axios 第一步 下载axios依赖 npm install axios -S 第二部 在untils文件夹创建https.js文件 内容: 1.引入axios 2.创建axios实例 实例中的属性:baseURL:根地址 timeout:超时时间, headers:返回后端数据的格式配置 3.添加请求拦截器与响应拦截器 请求拦截器可配置:每次请求时添加请求头 失败时配置响应状态码 相应拦截器可配置:对token值做过期处理 import axios from 'axios'
import { getToken } from '@/utils/auth'
// import router from '@/router'
import { MessageBox } from 'element-ui'
?
const http = axios.create({
?baseURL: '/',
?timeout: 1000 * 30,
?withCredentials: true,
?headers: {
? ?'Content-Type': 'application/json; charset=utf-8'
}
})
console.log(http)
/**
* 请求拦截
*/
http.interceptors.request.use(
(config) => {
? ?config.headers['token'] = getToken() // 请求头带上token
?
? ?return config
},
(error) => {
? ?return Promise.reject(error)
}
)
?
/**
* 响应拦截
*/
http.interceptors.response.use(
(response) => {
? ?// if (response.data && response.data.status === 2) {
? ?// ? // 401, token失效
? ?// ? /**
? ?// ? * TODO: token过期处理接口文档没有明确标识
? ?// ? */
? ?// ? // removeToken()
? ?// ? router.push({
? ?// ? ? name: 'login'
? ?// ? })
? ?// }
? ?return response
},
(error) => {
? ?let title = ''
? ?let message = ''
?
? ?if (error && error.response) {
? ? ?message = error.response.data.message
? ? ?// 401, token失效
? ? ?// if (error.response.data.status === 2) {
? ? ?// ? router.push({
? ? ?// ? ? name: 'login'
? ? ?// ? })
? ? ?// }
? ? ?switch (
? ? ? ?error.response.status // 跨域存在获取不到状态码的情况
? ? ) {
? ? ? ?case 400:
? ? ? ? ?title = '错误请求'
? ? ? ? ?break
? ? ? ?case 401:
? ? ? ? ?title = '资源未授权'
? ? ? ? ?break
? ? ? ?case 403:
? ? ? ? ?title = '禁止访问'
? ? ? ? ?break
? ? ? ?case 404:
? ? ? ? ?title = '未找到所请求的资源'
? ? ? ? ?break
? ? ? ?case 405:
? ? ? ? ?title = '不允许使用该方法'
? ? ? ? ?break
? ? ? ?case 408:
? ? ? ? ?title = '请求超时'
? ? ? ? ?break
? ? ? ?case 500:
? ? ? ? ?title = '内部服务器错误'
? ? ? ? ?break
? ? ? ?case 501:
? ? ? ? ?title = '未实现'
? ? ? ? ?break
? ? ? ?case 502:
? ? ? ? ?title = '网关错误'
? ? ? ? ?break
? ? ? ?case 503:
? ? ? ? ?title = '服务不可用'
? ? ? ? ?break
? ? ? ?case 504:
? ? ? ? ?title = '网关超时'
? ? ? ? ?break
? ? ? ?case 505:
? ? ? ? ?title = 'HTTP版本不受支持'
? ? ? ? ?break
? ? ? ?default:
? ? ? ? ?title = error.response.status
? ? }
? ? ?return MessageBox.alert(message, title, {
? ? ? ?type: 'warning'
? ? })
? } else {
? ? ?// 跨域获取不到状态码或者其他状态进行的处理
? ? ?return MessageBox.alert('请联系系统管理员, 或稍后再试!', '未知错误', {
? ? ? ?type: 'error'
? ? })
? }
}
)
?
console.log(http, '112')
?
export default http
第三步 在main.js中import引入https.js文件 将实例挂载在prototypeUes实例上 第四步 直接在组件中调用即可 |
|
|
| JavaScript知识库 最新文章 |
| ES6的相关知识点 |
| react 函数式组件 & react其他一些总结 |
| Vue基础超详细 |
| 前端JS也可以连点成线(Vue中运用 AntVG6) |
| Vue事件处理的基本使用 |
| Vue后台项目的记录 (一) |
| 前后端分离vue跨域,devServer配置proxy代理 |
| TypeScript |
| 初识vuex |
| vue项目安装包指令收集 |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/3 6:35:21- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |