广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >在vue项目如何使用base64加密
  • 513
分享到

在vue项目如何使用base64加密

2024-04-02 19:04:59 513人浏览 安东尼
摘要

目录Vue项目使用base64加密方法一方法二vue项目对路由参数进行base64加密加密解密vue项目使用base64加密 1.vue-cli 脚手架搭建前端项目中,使用base6

vue项目使用base64加密

1.vue-cli 脚手架搭建前端项目中,使用base64加密传输数据

方法一

1.安装依赖

npm install --save js-base64

2.在main.js中引入

import Base64 from 'js-base64'
Vue.use(Base64)

3.使用

Base64.encode(this.pwd);//加密
Base64.decode(this.pwd);//解密

方法二

在utils 文件夹下创建base64.js,写入下面代码

//1.加密解密方法使用:
//1.加密
// var str = '124中文内容';
// var base = new Base64();
// var result = base.encode(str);
// //document.write(result);
// //2.解密
// var result2 = base.decode(result);
// document.write(result2);
// //2.加密、解密算法封装:
function Base64() {
    // private property
    var _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    // public method for encoding
    this.encode = function (input) {
    if(!input){ console.log('请传入要加密的值') return}
        var output = "";
        var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
        var i = 0;
        input = _utf8_encode(input);
        while (i < input.length) {
            chr1 = input.charCodeAt(i++);
            chr2 = input.charCodeAt(i++);
            chr3 = input.charCodeAt(i++);
            enc1 = chr1 >> 2;
            enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
            enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
            enc4 = chr3 & 63;
            if (isNaN(chr2)) {
                enc3 = enc4 = 64;
            } else if (isNaN(chr3)) {
                enc4 = 64;
            }
            output = output +
            _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +
            _keyStr.charAt(enc3) + _keyStr.charAt(enc4);
        }
        return output;
    }
    // public method for decoding
    this.decode = function (input) {
    if(!input){ console.log('请传入要解密的值') return}
        var output = "";
        var chr1, chr2, chr3;
        var enc1, enc2, enc3, enc4;
        var i = 0;
        input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
        while (i < input.length) {
            enc1 = _keyStr.indexOf(input.charAt(i++));
            enc2 = _keyStr.indexOf(input.charAt(i++));
            enc3 = _keyStr.indexOf(input.charAt(i++));
            enc4 = _keyStr.indexOf(input.charAt(i++));
            chr1 = (enc1 << 2) | (enc2 >> 4);
            chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
            chr3 = ((enc3 & 3) << 6) | enc4;
            output = output + String.fromCharCode(chr1);
            if (enc3 != 64) {
                output = output + String.fromCharCode(chr2);
            }
            if (enc4 != 64) {
                output = output + String.fromCharCode(chr3);
            }
        }
        output = _utf8_decode(output);
        return output;
    }
    // private method for UTF-8 encoding
    var _utf8_encode = function (string) {
        string = string.replace(/\r\n/g,"\n");
        var utftext = "";
        for (var n = 0; n < string.length; n++) {
            var c = string.charCodeAt(n);
            if (c < 128) {
                utftext += String.fromCharCode(c);
            } else if((c > 127) && (c < 2048)) {
                utftext += String.fromCharCode((c >> 6) | 192);
                utftext += String.fromCharCode((c & 63) | 128);
            } else {
                utftext += String.fromCharCode((c >> 12) | 224);
                utftext += String.fromCharCode(((c >> 6) & 63) | 128);
                utftext += String.fromCharCode((c & 63) | 128);
            }
        }
        return utftext;
    }
    // private method for UTF-8 decoding
   var  _utf8_decode = function (utftext) {
        var string = "";
        var i = 0;
        let c =0, c1 =0, c2 = 0;
        while ( i < utftext.length ) {
            c = utftext.charCodeAt(i);
            if (c < 128) {
                string += String.fromCharCode(c);
                i++;
            } else if((c > 191) && (c < 224)) {
                c2 = utftext.charCodeAt(i+1);
                string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
                i += 2;
            } else {
                c2 = utftext.charCodeAt(i+1);
                c1 = utftext.charCodeAt(i+2);
                string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
                i += 3;
            }
        }
        return string;
    }
}
export default Base64

组件中使用

import base from '@/utils/base64'  //引入
  var base1 = new base();
  var passWord=base1.encode(this.fORM.password) //加密

vue项目对路由参数进行base64加密

1.安装依赖

npm install --save js-base64

2.全局引入 main.js

import * as Base64 from 'js-base64'
Vue.prototype.Base64 = Base64

3.在页面中使用

加密

<router-link
   :to="{
     path: '/List',
     query: { info: Base64.encode(JSON.stringify({ title: '这里是标题', module: 2 })) }
   }"
 >更多
 </router-link>
getDetails(module, title, id) {
      let param = {
        module: module,
        title: title,
        articleId: id
      }
      this.$router.push({
        path: '/details',
        query: {
          info: this.Base64.encode(JSON.stringify(param))
        }
      })
    },

解密

 created() {
      let param = JSON.parse(this.Base64.decode(this.$route.query.info))
 }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 在vue项目如何使用base64加密

本文链接: https://www.lsjlt.com/news/151432.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在vue项目如何使用base64加密
    目录vue项目使用base64加密方法一方法二vue项目对路由参数进行base64加密加密解密vue项目使用base64加密 1.vue-cli 脚手架搭建前端项目中,使用base6...
    99+
    2022-11-13
  • vue怎么使用base64加密
    本篇内容主要讲解“vue怎么使用base64加密”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么使用base64加密”吧!vue项目使用base64加密vue-cli 脚手架搭建前端项目...
    99+
    2023-07-02
  • Vue项目如何实现rsa加密
    目录如何实现rsa加密安装jsencrypt引入jsencrypt获取公钥(调接口)引入getPubKey使用rsa加密,解密,加签,解签安装引js加密解密加签,验签测试如何实现rs...
    99+
    2022-11-13
  • 如何在vuejs项目中使用md5加密密码的实现
    目录1、NPM 安装:2、全局用法3.局部用法概念MD5加密有什么用?为什么要使用MD5加密?MD5算法的用途是什么?具体使用步骤: 1、NPM 安装: npm install --...
    99+
    2022-11-13
    vue md5加密密码 vue md5加密
  • vue项目使用md5加密、crypto-js加密、国密sm3及国密sm4的方法
    目录方法一:md5加密方法二:crypto-js 加密解密方法三:国密sm3方法四:国密sm4写在后面:项目中涉及到一些加密解密的需求,了解并尝试了几种加密解密方法,以下: 方法一:...
    99+
    2022-12-08
    vue中md5加密 vue使用crypto-js加密 vue 国密sm3
  • 怎么在java中使用Base64进行加密与解密
    怎么在java中使用Base64进行加密与解密?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Base64加密与解密操作package cn.mldn.demo;i...
    99+
    2023-06-14
  • MD5加密算法如何在java项目中运用
    这篇文章将为大家详细讲解有关 MD5加密算法如何在java项目中运用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。java 中 MD5加密的实例主要代码如下package techDemo;...
    99+
    2023-05-31
    java md5 ava
  • 如何使用vbs实现解密base64加密的脚本
    这篇文章主要为大家展示了“如何使用vbs实现解密base64加密的脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用vbs实现解密base64加密的脚本”这篇文章吧。代码如下:Funct...
    99+
    2023-06-08
  • Mock.js在Vue项目中如何使用
    本篇内容主要讲解“Mock.js在Vue项目中如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Mock.js在Vue项目中如何使用”吧!Mock.js 初体验安装:npm ins...
    99+
    2023-07-02
  • 如何在Vue项目中使用vuex
    目录在Vue项目中使用vuex一、安装vuex二、创建store三、挂载store四、在组件中使用五、在Vue组件中监听Vuex总结在Vue项目中使用vuex 在一个vue项目中使用...
    99+
    2023-01-28
    Vue使用vuex Vue vuex Vue项目中使用vuex
  • SHA-256加密如何在Java 项目中实现
    本篇文章给大家分享的是有关SHA-256加密如何在Java 项目中实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、利用Apache的工具类实现加密:maven:<d...
    99+
    2023-05-31
    java sha-256 加密如何
  • 如何在PHP项目中实现数据加密和解密?
    如何在PHP项目中实现数据加密和解密?随着互联网的发展,数据安全成为了一个非常重要的问题。在PHP项目中,我们经常需要处理一些敏感的数据,如用户密码、用户信息等。为了保护这些数据不被恶意获取,我们需要对其进行加密和解密操作。本文将介绍如何在...
    99+
    2023-11-02
    数据加密:encrypt 数据解密:decrypt PHP项目:PHP project
  • springboot项目数据库密码如何加密
    前言 在我们日常开发中,我们可能很随意把数据库密码直接明文暴露在配置文件中,在开发环境可以这么做,但是在生产环境,是相当不建议这么做,毕竟安全无小事,谁也不知道哪天密码就莫名其妙泄...
    99+
    2022-11-12
  • 在React、Vue项目中如何使用SVG
    这篇文章将为大家详细讲解有关在React、Vue项目中如何使用SVG,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在一些现代的扁平化设计网站,特别是移动端网站,经常会包含...
    99+
    2022-10-19
  • 如何在vue项目中使用UEditor--plus
    目录1:UEditor-plus富文本编辑器如何在vue项目中使用2.使用方法3.运行项目1:UEditor-plus富文本编辑器如何在vue项目中使用 备注:UEditor是由百度...
    99+
    2022-11-13
  • RSA加密算法如何在java项目中实现
    这篇文章将为大家详细讲解有关RSA加密算法如何在java项目中实现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、什么是非对称加密加密的密钥与加密的密钥不相同,这样的加密算法称之为非对称加...
    99+
    2023-05-31
    java rsa加密 ava
  • 如何在Vue项目中使用axios请求
    目录1、安装2、没有封装存在的问题3、创建文件4、请求地址配置5、axios 配置,设置请求头及响应码处理6、使用在实际的项目中,和后台的数据交互是少不了的,我通常使用的是 axio...
    99+
    2022-11-12
  • 如何在vue项目中通过配置 webpack-obfuscator实现代码加密混淆
    如何在vue项目中通过配置 webpack-obfuscator实现代码加密混淆?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。安装npm install ...
    99+
    2023-06-06
  • SpringBoot项目使用jasypt加解密的方法
    目录一、添加依赖二、生成加密数据三、对加密数据进行解密四、在SpringBoot项目中使用Jasypt 是一个 Java 库,它允许开发者以最小的努力为他 / 她的项目添加基本的加密...
    99+
    2022-11-13
  • vue项目中如何添加枚举
    目录vue项目添加枚举在vue文件中引用使用方法vue中枚举的使用1. 建一个js文件如:common.js2. 在页面直接引入vue项目添加枚举 添加文件,文件名为enum.js ...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作