掘金,记录每天代码。。。

529 阅读1分钟

Vue axios 拦截器之·请求拦截器

  1. 请求拦截器会在每次触发ajax之前触发
  2. 主要功能是为了判断你每次请求有没有携带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 接收)

解决办法:

  1. 修改服务器:让服务器可以接收 json 数据
  2. 修改客户端:让 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"