解决vue项目axios每次请求session不一致的问题


Posted in Javascript onOctober 24, 2020

1、vue开发后台管理项目,登录后,请求数据每次session都不一致,后台返回未登录,处理方法打开main.js设置:

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
require('es6-promise').polyfill()
import MintUI from 'mint-ui'
import 'mint-ui/lib/style.css'
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
import store from './store'
import axios from 'axios' // 1、在这里引入axios 
 
axios.interceptors.response.use(function(res) {
 var res = res.data;
 if(res.status === 403 ) {
 router.push('/')
 return res;
 }
 return res;
}, function(error) {
 return Promise.reject(error);
});
axios.defaults.withCredentials = true; //意思是携带cookie信息,保持session的一致性
Vue.prototype.$axios = axios
Vue.prototype.stringify = require('qs').stringify; 
 
Vue.use(MintUI)
Vue.use(ElementUI);
Vue.config.productionTip = false
 
/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 store,
 components: { App },
 template: '<App/>'
})

withCredentials为false意思是不携带cookie信息,为保持session的一致性需设置为true;

2、为解决跨域,需要代理

解决vue项目axios每次请求session不一致的问题

3、数据请求

解决vue项目axios每次请求session不一致的问题

补充知识:解决跨域造成Vue-element每次请求sessionID不同问题

vue-element作为前端开发框架, 前后端分离项目ajax跨域, 每次http请求后sessionId均会发生变化,导致获取session失败,

只需要在文件vue-element-admin-master-1\src\utils\request.js中添加如下代码即可:

withCredentials: true,

crossDomain: true

整个axios请求为:

const service = axios.create({
 baseURL: process.env.BASE_API, // api的base_url
 timeout: 5000, // request timeout
 withCredentials: true,
 crossDomain: true
})

以上这篇解决vue项目axios每次请求session不一致的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery提示 &quot;object expected&quot;的解决方法
Dec 13 Javascript
iframe跨域通信封装详解
Aug 11 Javascript
js实现纯前端的图片预览
Apr 27 Javascript
原生JS实现轮播效果+学前端的感受(防止走火入魔)
Aug 21 Javascript
jQuery ajaxForm()的应用
Oct 14 Javascript
sea.js常用的api简易文档
Nov 15 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
Jul 19 Javascript
JavaScript hasOwnProperty() 函数实例详解
Aug 04 Javascript
再谈Angular4 脏值检测(性能优化)
Apr 23 Javascript
iview form清除校验状态的实现
Sep 19 Javascript
vue 解决computed修改data数据的问题
Nov 06 Javascript
JavaScript实现五子棋小游戏
Oct 26 Javascript
解决vue中使用less/sass及使用中遇到无效的问题
Oct 24 #Javascript
vue中是怎样监听数组变化的
Oct 24 #Javascript
JSON stringify方法原理及实例解析
Oct 23 #Javascript
vue中使用腾讯云Im的示例
Oct 23 #Javascript
vue中使用router全局守卫实现页面拦截的示例
Oct 23 #Javascript
vue使用video插件vue-video-player详解
Oct 23 #Javascript
vue-video-player视频播放器使用配置详解
Oct 23 #Javascript
You might like
php之Memcache学习笔记
2013/06/17 PHP
php使用curl和正则表达式抓取网页数据示例
2014/04/13 PHP
XHTML-Strict 内允许出现的标签
2006/12/11 Javascript
Javascript常考语句107条收集
2010/03/09 Javascript
给事件响应函数传参数的四种方式小结
2013/12/05 Javascript
原生js实现fadein 和 fadeout淡入淡出效果
2014/06/05 Javascript
javascript中Object使用详解
2015/01/26 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
JS从一组数据中找到指定的单条数据的方法
2016/06/02 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
JS如何设置iOS中微信浏览器的title
2016/11/22 Javascript
JS匹配日期和时间的正则表达式示例
2017/05/12 Javascript
webpack项目轻松混用css module的方法
2018/06/12 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
微信小程序 扭蛋抽奖机css3动画实现详解
2019/07/19 Javascript
p5.js临摹旋转爱心
2019/10/23 Javascript
vue 计算属性和侦听器的使用小结
2021/01/25 Vue.js
Python实现PS图像抽象画风效果的方法
2018/01/23 Python
Python进阶之自定义对象实现切片功能
2019/01/07 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
2020/02/23 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
英国设计师珠宝网站:Joshua James Jewellery
2020/03/01 全球购物
说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
2012/05/24 面试题
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?用contains来区分是否有重复的对象。还是都不用
2013/07/30 面试题
银行求职自荐书
2014/06/25 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
民间借贷借条如何写
2015/05/26 职场文书
国博复兴之路观后感
2015/06/02 职场文书
运动会通讯稿200字
2015/07/20 职场文书
2015年治庸问责工作总结
2015/07/27 职场文书
运输公司工作总结
2015/08/11 职场文书
nginx里的rewrite跳转的实现
2021/03/31 Servers
【海涛DOTA解说】EVE女子战队独家录像加ZSMJ神牛两连发
2022/04/01 DOTA