在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 相关文章推荐
基于jQuery的烟花效果(运动相关)点击屏幕出烟花
Jun 14 Javascript
Area 区域实现post提交数据的js写法
Apr 22 Javascript
Javascript中设置默认参数值示例
Sep 11 Javascript
JavaScript动态添加列的方法
Mar 25 Javascript
JavaScript实现的类字典插入或更新方法实例
Jul 10 Javascript
JS实现的3D拖拽翻页效果代码
Oct 31 Javascript
jQuery解决浏览器兼容性问题案例分析
Apr 15 Javascript
浅谈Angularjs link和compile的使用区别
Oct 21 Javascript
不到200行 JavaScript 代码实现富文本编辑器的方法
Jan 03 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
Apr 02 Javascript
js中的this的指向问题详解
Aug 29 Javascript
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
May 29 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与MySQL开发中页面出现乱码的一种解决方法
2007/07/29 PHP
使用php实现下载生成某链接快捷方式的解决方法
2013/05/07 PHP
编写Smarty插件在模板中直接加载数据的详细介绍
2013/06/26 PHP
php实现中文字符截取防乱码方法汇总
2015/04/29 PHP
php实现统计网站在线人数的方法
2015/05/12 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
jQuery选择头像并实时显示的代码
2010/06/27 Javascript
javascript 寻找错误方法整理
2014/06/15 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
举例讲解jQuery对DOM元素的向上遍历、向下遍历和水平遍历
2016/07/07 Javascript
基于BootStrap实现局部刷新分页实例代码
2016/08/08 Javascript
javascript设计模式之module(模块)模式
2016/08/19 Javascript
详解js的六大数据类型
2016/12/27 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
React-Native左右联动List的示例代码
2017/09/21 Javascript
JS实现数组的增删改查操作示例
2018/08/29 Javascript
详解IOS微信上Vue单页面应用JSSDK签名失败解决方案
2018/11/14 Javascript
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
python之matplotlib学习绘制动态更新图实例代码
2018/01/23 Python
python使用tensorflow深度学习识别验证码
2018/04/03 Python
基于numpy.random.randn()与rand()的区别详解
2018/04/17 Python
python+openCV调用摄像头拍摄和处理图片的实现
2019/08/06 Python
PyInstaller的安装和使用的详细步骤
2020/06/02 Python
澳大利亚家具和家居用品在线:BROSA
2017/11/02 全球购物
CHARLES & KEITH澳大利亚官网:新加坡时尚品牌
2019/01/22 全球购物
Myprotein比利时官方网站:欧洲第一运动营养品牌
2020/10/04 全球购物
opencv实现图像几何变换
2021/03/24 Python
实习生的自我评价
2014/01/08 职场文书
品牌宣传方案
2014/03/21 职场文书
篮球赛口号
2014/06/18 职场文书
医生个人自我剖析材料
2014/10/08 职场文书
小学元宵节活动总结
2015/02/06 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
Go 实现英尺和米的简单单位换算方式
2021/04/29 Golang
Golang全局变量加锁的问题解决
2021/05/08 Golang
HTML基本元素标签介绍
2022/02/28 HTML / CSS