Vue axios 拦截器之·请求拦截器
- 请求拦截器会在每次触发ajax之前触发
- 主要功能是为了判断你每次请求有没有携带token,如果token存在则在请求头加上这个token。后台会判断我这个token是否过期。
// 添加拦截器
axios.interceptors.request.use(function(config) {
// 先取出token
let token = localStorage.getItem("token");
// 判断有没有token
if (!token !== null) config.headers.Authorization = "Bearer" + token;
return config;
});
vue axios 后端接受不到前端的数据
前端 AXIOS 在提交 AJAX 数据时有两种格式可以选择:
- json(axios 默认使用 json 格式提交数据)
- x-www-form-urlencoded(这种格式默认服务器可以使用 body-parser 接收)
解决办法:
- 修改服务器:让服务器可以接收 json 数据
- 修改客户端:让 axios 使用
x-www-form-urlencoded方式提交
//先创建一个URLSearchParams 对象
let formdata = new URLSearchParams();
//然年后使用append的方法像对象中添加数据
formdata.append("mobile", this.form.mobile);
formdata.append("password", this.form.password);
//然后我们就可以以x-www-form-urlencoded 的格式提交代码
this.$http.post("/login", formdata).then(res => {
Node后台 md5加密方式简单密码容易被破解
MD5由MD4、MD3、MD2改进而来,主要增强算法复杂度和不可逆性。MD5算法因其普遍、稳定、快速的特点,仍广泛应用于普通数据的加密保护领域 [2] 。
解决办法: 生成一个复杂的密钥让这个密钥跟密码一起储存
// md5
const md5 = require('md5')
// 加密密钥
const d5 = "lkaslksdlkalsdjakd;l,.,q;wldmlksankjdnhai"