在Vue项目中使用jsencrypt.js对数据进行加密传输的方法


Posted in Javascript onApril 17, 2019

项目需求中需要对用户登录时的密码进行加密,在网上查询些许文章后,最终与后端协商使用jsencrypt.js。

jsencrypt.js的github地址: https://github.com/travist/js...

使用yarn安装至Vue项目

yarn add jsencrypt --dep

或者使用npm

npm install jsencrypt --dep

引入jsencrypt

import { JSEncrypt } from 'jsencrypt'

可封装为全局混合,便于调用

公钥为后端提供,如前端需要解密数据,则需要后端提供私钥。此处只封装了加密。

methods: {
 // 加密
 encryptedData(publicKey, data) {
  // 新建JSEncrypt对象
  let encryptor = new JSEncrypt();
  // 设置公钥
  encryptor.setPublicKey(publicKey);
  // 加密数据
  return encryptor.encrypt(data);
 }
 }

调用函数加密,此处的公钥是我从后端那获取的,然后加密密码

encryptedPassword = this.encryptedData(publicKey, password);

即完成加密。

更多使用可查阅官方文档 http://travistidwell.com/jsen...

PS:下面看下jsencrypt 配置对密码进行加密(vue)

安装

npm i node-jsencrypt

在script下导入

// 引入加密模块,对密码进行处理
const JSEncrypt = require('jsencrypt');

引用

一般情况下,后台会给一个获取公钥的接口来进行转换

methods: {
  init() {
   // 发送请求,获取公钥
   getKey().then(res => {
    this.gongKey = res.data.data; // 获取到公钥
    // 传入所请求回来的公钥,对密码进行处理
    // 实例化加密对象
    var crypt = new JSEncrypt.JSEncrypt({
     default_key_size: 1024
    });
    crypt.setPublicKey(this.gongKey);
    // 拿到加密明文
    let passWord = crypt.encrypt(obj.value);
   });
  }
 }

总结

以上所述是小编给大家介绍的在Vue项目中使用jsencrypt.js对数据进行加密传输的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
javascript import css实例代码
Jul 18 Javascript
判断浏览器的javascript版本的代码
Sep 03 Javascript
完美实现仿QQ空间评论回复特效
May 06 Javascript
超赞的动手创建JavaScript框架的详细教程
Jun 30 Javascript
浅谈JavaScript变量的自动转换和语句
Jun 12 Javascript
JS转换HTML转义符的方法
Aug 24 Javascript
JS实现的简单轮播图运动效果示例
Dec 22 Javascript
使用InstantClick.js让页面提前加载200ms
Sep 12 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
Feb 22 Javascript
详解vue 在移动端体验上的优化解决方案
May 20 Javascript
js图片无缝滚动插件使用详解
May 26 Javascript
详解mpvue开发微信小程序基础知识
Sep 23 Javascript
js的继承方法小结(prototype、call、apply)(推荐)
Apr 17 #Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
Apr 17 #Javascript
Vue源码探究之虚拟节点的实现
Apr 17 #Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
Apr 17 #Javascript
ES6知识点整理之对象解构赋值应用示例
Apr 17 #Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 #Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
Apr 17 #Javascript
You might like
短波的认识
2021/03/01 无线电
分页详解 从此分页无忧(PHP+mysql)
2007/11/23 PHP
php中的数组操作函数整理
2008/08/18 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
2011/09/23 PHP
深入解析PHP 5.3.x 的strtotime() 时区设定 警告信息修复
2013/08/05 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
js验证表单大全
2006/11/25 Javascript
判断脚本加载是否完成的方法
2009/05/26 Javascript
js form 验证函数 当前比较流行的错误提示
2009/06/23 Javascript
jQuery中:focus选择器用法实例
2014/12/30 Javascript
JavaScript中property和attribute的区别详细介绍
2015/03/03 Javascript
JavaScript数据类型详解
2015/04/01 Javascript
jQuery判断指定id的对象是否存在的方法
2015/05/22 Javascript
javascript简单实现类似QQ头像弹出效果的方法
2015/08/03 Javascript
BootStrap智能表单实战系列(十一)级联下拉的支持
2016/06/13 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
正则中的回溯定义与用法分析【JS与java实现】
2016/12/27 Javascript
Bootstrap面板使用方法
2017/01/16 Javascript
Bootstrap响应式导航由768px变成992px的实现代码
2017/06/15 Javascript
浅谈目前可以使用ES10的5个新特性
2019/06/25 Javascript
关于layui 实现点击按钮添加一行(方法渲染创建的table)
2019/09/29 Javascript
[40:10]2015国际邀请赛全明星表演赛
2015/08/07 DOTA
Python设计模式之代理模式简单示例
2018/01/09 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
2018/06/28 Python
Python3模拟登录操作实例分析
2019/03/12 Python
Python字符编码转码之GBK,UTF8互转
2020/02/09 Python
python 多线程共享全局变量的优劣
2020/09/24 Python
博朗(Braun)俄罗斯官方商店:德国小家电品牌
2019/09/24 全球购物
2014年庆元旦活动方案
2014/02/15 职场文书
节能标语大全
2014/06/21 职场文书
暑期学习心得体会
2014/09/02 职场文书
关于分班的感言
2015/08/04 职场文书
优化经济发展环境工作总结
2015/08/11 职场文书
保护环境建议书作文400字
2015/09/14 职场文书
学校教代会开幕词
2016/03/04 职场文书
国际最新研究在陨石中发现DNA主要成分 或由陨石带来地球
2022/04/29 数码科技