本篇文章给大家谈谈vue 小程序保存token,以及如何保存小程序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
今天给各位分享vue 小程序保存token的知识,其中也会对如何保存小程序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
vue项目实现用户登录 以及携带token
<article class="_2rhmJa"
调取登录接口 (首先明确一下要做到事情)
在前后端完全分离的情况下,Vue项目中实现token验证大致思路如下:
1、第一次登录的时候,前端调后端的登陆接口,发送用户名和密码
2、后端收到请求,验证用户名和密码,验证成功,就给前端返回一个token
3、前端拿到token,将token存储到localStorage和vuex中,并跳转路由页面
4、前端每次跳转路由,就
判断 localStroage 中有无 token ,没有就跳转到登录页面,有则跳转到对应路由页面
5、每次调后端接口,都要在请求头中加token
6、后端判断请求头中有无token,有token,就拿到token并验证token,验证成功就返回
数据,验证失败(例如:token过期)就返回401,请求头中没有token也返回401
7、如果前端拿到状态码为401,就清除token信息并跳转到登录页面
调取登录接口成功,会在回调函数中将token存储到localStorage和vuex中
1.<template
<div
</div
</template
export default {
data () {
},
methods: {
/////判读账号密码是否输入,没有则alert 出来
}
};
在store文件夹下的index.js 添加 token
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex);
const store = new Vuex.Store({
state: {
},
mutations: {
}
});
export default store;
二,配置 路由导航守卫
router文件夹下的index.js
import Vue from 'vue';
import Router from 'vue-router';
import login from '@/components/login';
import home from '@/components/home';
Vue.use(Router);
const router = new Router({
routes: [
]
});
// 导航守卫
// 使用 router.beforeEach 注册一个全局前置守卫,判断用户是否登陆
router.beforeEach((to, from, next) = {
if (to.path === '/login') {
} else {
}
});
export default router;
三、请求头加token 在 main.js中添加
// 添加请求-,在请求头中加token
axios.interceptors.request.use(
config = {
},
error = {
});
token的过期可以自定义
四、如果前端拿到状态码为401,就清除token信息并跳转到登录页面
localStorage.removeItem('Authorization');
this.$router.push('/login');
</article
66人点赞
前段学习
vue打包无法存储token
Vue打包无法存储token是指Vue应用在打包后无法持久保存认证凭据
vue 小程序保存token,这是因为Vue使用
vue 小程序保存token了浏览器
vue 小程序保存token的localStorage
vue 小程序保存token,在应用编译后会被清除。为了解决该问题,可以使用HTML5 Web Storage API将token存储在本地,或者在编译时将token放入到应用中,并在每次加载时获取token进行认证。
Vue项目中用户登录及token验证及流程图
在前后端完全分离
vue 小程序保存token的情况下
vue 小程序保存token,Vue项目中实现token验证大致思路如下
vue 小程序保存token:
简单举例说明:
① 调登录接口成功
vue 小程序保存token,在回调函数中将token存储到localStorage和vuex中(login.vue中)
② store文件夹下
vue 小程序保存token的index.js
③ 路由守卫(router文件夹下的index.js)
④ 请求头加token
⑤ 如果前端拿到状态码为401,就清除token信息并跳转到登录页面
流程图:
小程序中基于token的登录流程
即先发起wx.login请求,得到code后经第三方服务器想微信服务器发送请求获取openid,assessToken等敏感信息,这里我们需要以assessToken作为登录状态保持的依据。
1.首次登录小程序,本地存储中还不存在token,即需要发起登录请求得到token,并存到本地存储
2.小程序本地存储中已存在token,但是已过期,即需要再次发起登录请求以获得token,并覆盖掉本地存储中原先的token
3.小程序本地存储中存在token且有效,即保持登录状态
小程序token能存多久
微信小程序的token是有两个小时的时间限制的,而且当用户申请了新的token时,新旧token会有5分钟的有效期,过了这个时间就会导致旧的token过期,会报一个当前token与appid或者openid或者secret不配套的错误,解决思路就是把token存到缓存中,前台后台都可以,不需要重新生成,但是要注意时间的判定。
消息模板需要提前定义
消息内容需要提前定义好,且长度不能超过20,超过会出现错误。因此需要判断当前字符串是否超出规定长度,超出的该如何处理,都需要考虑。
小程序消息推送
需要用到用户到微信小程序管理平台认证的openId,还有开发者秘钥,进行消息的推送,把要发送的消息封装到模板中,获取到要发送用户的openId(openId是用户登录小程序以后由小程序平台生成的openId,每个用户有唯一一个,可以重复生成)
vue中token存入cookie
npm
链接:https://www.npmjs.com/package/vue-cookies
安装:
npm install vue-cookies --save
使用:
import Vue from 'Vue' import VueCookies from 'vue-cookies' Vue.use(VueCookies)
Api:
设置 cookie:
this.$cookies.set(keyName, time) //return this
获取cookie
this.$cookies.get(keyName) // return value
删除 cookie
this.$cookies.remove(keyName) // return false or true , warning: next version return this; use isKey(keyname) return true/false,please
查看一个cookie是否存在(通过keyName)
this.$cookies.isKey(keyName) // return false or true
获取所有cookie名称
this.$cookies.keys() // return a array
参考文章: https://www-blogs.com/s313139232/p/9341762.html
1.npm i js-cookie //安装
2.import Cookies from 'js-cookie' //引用
// 存入cookie:
Cookies.set('token','value')
// 获取cookie:
Cookies.get('token')
//删除cookie:
Cookies.remove('token')
关于vue 小程序保存token和如何保存小程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
vue 小程序保存token的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于如何保存小程序、vue 小程序保存token的信息别忘了在本站进行查找喔。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~