在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 相关文章推荐
告诉大家什么是JSON
Jun 10 Javascript
javascript类继承机制的原理分析
Sep 12 Javascript
jquery动态加载图片数据练习代码
Aug 04 Javascript
JQuery之focus函数使用介绍
Aug 20 Javascript
js登录弹出层特效
Mar 07 Javascript
jquery用data方法获取某个元素上的事件
Jun 23 Javascript
js实现一个可以兼容PC端和移动端的div拖动效果实例
Dec 09 Javascript
javascript cookie的基本操作(添加和删除)
Jul 24 Javascript
vue复合组件实现注册表单功能
Nov 06 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
May 31 Javascript
详解Vue 如何监听Array的变化
Jun 06 Javascript
Vue指令实现OutClick的示例
Nov 16 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
php socket方式提交的post详解
2008/07/19 PHP
php生成txt文件标题及内容的方法
2014/01/16 PHP
php ajax异步读取rss文档数据
2016/03/29 PHP
用javascript获取textarea中的光标位置
2008/05/06 Javascript
PNG背景在不同浏览器下的应用
2009/06/22 Javascript
浅析JS运动
2015/12/28 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
jQuery实现的简单拖拽功能示例
2016/09/13 Javascript
详解Node.js中的事件机制
2016/09/22 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
2016/10/09 Javascript
浅谈DOM的操作以及性能优化问题-重绘重排
2017/01/08 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
详解vue开发中调用微信jssdk的问题
2019/04/16 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
从0到1搭建element后台框架优化篇(打包优化)
2019/05/12 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
2020/01/22 Javascript
layui实现显示数据表格、搜索和修改功能示例
2020/06/03 Javascript
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python中实现php的var_dump函数功能
2015/01/21 Python
python万年历实现代码 含运行结果
2017/05/20 Python
python实现将excel文件转化成CSV格式
2018/03/22 Python
PyQt5响应回车事件的方法
2019/06/25 Python
python实现将文件夹内的每张图片批量分割成多张
2019/07/22 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
基于python实现MQTT发布订阅过程原理解析
2020/07/27 Python
python属于哪种语言
2020/08/16 Python
css3 border-radius属性详解
2017/07/05 HTML / CSS
css3实现图片遮罩效果鼠标hover以后出现文字
2013/11/05 HTML / CSS
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
pytorch中的model=model.to(device)使用说明
2021/05/24 Python
SpringCloud Alibaba 基本开发框架搭建过程
2021/06/13 Java/Android
浅谈哪个Python库才最适合做数据可视化
2021/06/28 Python