vue base64 文件、图片解密

Base64的加密与解密 最近对网络安全的兴趣猛涨,闲着没逝,给大家整一期Base64的加密与解密。 阅读详情
AI摘要

本文介绍了Base64编码的基本概念及其应用,包括如何通过Base64处理文本文件和图片数据,并提供了具体的JavaScript代码示例。


前言

Base64是一种二进制到文本的编码方式。如果要更具体一点的话,可以认为它是一种将 byte数组编码为字符串的方法,而且编码出的字符串只包含ASCII基础字符。

例如字符串ShuSheng007对应的Base64为U2h1U2hlbmcwMDc=。其中那个=比较特殊,是填充符,一会再说。

值得注意的是Base64不是加密算法,其仅仅是一种编码方式,算法也是公开的,所以不能依赖它进行加密。

一、为什么叫Base64?

因为它是基于(Base)64个字符的一种编码方式。使用其编码后的文本只包含64个ASCII码字符(偶尔加一个填充字符=),如下所示:

Base64使用到的64个字符:

  • A-Z 26个
  • a-z 26个
  • 0-9 10个
  • + 1个
  • / 1个

二、解密

1.文件

代码如下(示例):

var url = "data:text/plain;charset=utf-8;base64," + res.data.data;
var a = document.createElement("a");
a.href = url;
a.download = `${list[0].sendNo}.txt`;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);

这段代码是用来创建一个下载链接,让用户可以下载一个文本文件。

解释:

1. `var url = "data:text/plain;charset=utf-8;base64," + res.data.data;`:这一行代码创建了一个包含文本数据的 Base64 编码的数据 URL。这个 URL 的类型是纯文本 (`text/plain`),字符编码是 UTF-8。`res.data.data` 可能是从某个地方获取的文本数据。

2. `var a = document.createElement("a");`:这一行代码创建了一个 `<a>` 元素,即超链接元素。

3. `a.href = url;`:这一行代码将刚刚创建的超链接的 `href` 属性设置为之前生成的包含文本数据的数据 URL。

4. `a.download = `${list[0].sendNo}-批次码.txt`;`:这一行代码设置了下载属性,指定了用户下载文件时默认的文件名。`${list[0].sendNo}` 可能是从 `list` 数组中获取的某个值。

5. `document.body.appendChild(a);`:这一行代码将刚刚创建的 `<a>` 元素添加到文档的 `<body>` 元素中。

6. `a.click();`:这一行代码模拟用户点击这个超链接,从而触发文件下载。

7. `document.body.removeChild(a);`:这一行代码在文件下载完成后,从文档中移除这个 `<a>` 元素。

总的来说,这段代码的作用是在页面上动态生成一个下载链接,让用户点击后可以下载一个文本文件。

2.图片

代码如下(示例):

    <img

          style="width: 100%; height: 100%"

          v-for="(item, index) in imgList"

          :key="index"

          :src="'data:image/png;base64,' + item"

          alt=""

        />


这段代码是用来在页面上展示一组 Base64 编码的 PNG 图片。

解释:

1. `<img>`:这是 HTML 中用来显示图片的标签。

2. `style="width: 100%; height: 100%"`:这段代码设置了图片的宽度和高度都为父元素的 100%,即图片会填充父元素的宽度和高度。

3. `v-for="(item, index) in imgList" :key="index"`:这段代码使用 Vue.js 中的 `v-for` 指令,遍历 `imgList` 数组中的每个元素,将每个元素赋值给 `item`,并使用 `index` 作为唯一的 key。

4. `:src="'data:image/png;base64,' + item"`:这段代码动态设置了每个 `<img>` 标签的 `src` 属性,将 Base64 编码的图片数据添加到 `data:image/png;base64,` 的前缀后面。这样浏览器就可以直接解析这段 Base64 编码的数据并显示图片。

5. `alt=""`:这是图片的替代文本,当图片无法显示时会显示这段文本。

总的来说,这段代码会根据 `imgList` 数组中的每个 Base64 编码的 PNG 图片数据,动态生成对应的 `<img>` 标签,并在页面上展示这些图片。

总结

js 

  • const encodedData = btoa("Hello, world"); // 加密
  • const decodedData = atob(encodedData); // 解密

文件: "data:text/plain;charset=utf-8;base64," 

图片: "'data:image/png;base64,' 

C#常用加密解密方法(Base64加密解密) 本节主要分享Base64加密解密:Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。 阅读详情

相关推荐

uniapp中base64加密解密的实战应用与优化技巧

本文深入探讨了在UniApp开发中Base64编码与解码的实战应用与优化技巧。文章澄清了Base64作为编码而非加密的本质,并详细介绍了如何在UniApp项目中正确引入base-64库、处理中文字符以避免乱码,以及其在图片处理、配置信息伪装和URL参数传递等典型场景中的应用。同时,文章提供了性能优化、安全增强及常见问题排查的实用指南,帮助开发者构建更健壮的数据处理流程。

weixin_27960253的博客 253

js 实现 Base64 编码的相互转换

干脆点,直接贴代码 1. 代码 function Base64() { // private property _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; // public method for enco...

669

Base64编码与解码

在逆向过程中,经常会遇到base64编码的数据,那就来了解一下base64的特点吧! 1. Base64编码后的字符串长度通常是**4**的倍数 2. Base64编码只包含以下字符:**A-Z、a-z、0-9、+、/、=**。 3. Base64编码通常以一个或两个**等号结尾**(用作填充)

tdl320721的博客 1628

Base64详解:玩转图片Base64编码

图片处理在前端工作中可谓占据了很重要的一壁江山。而图片的 base64 编码可能相对一些人而言比较陌生,本文不是从纯技术的角度去讨论图片的 base64 编码。标题略大,不过只是希望通过一些浅显的论述,让你知道什么是图片的 base64 编码,为什么我们要用它,我们如何使用并且方便的使用它,并让你懂得如何去在前端的实际工作中运用它。...

青春木鱼的博客 5万+

微信PC版聊天记录本地提取与多格式导出技术详解

微信聊天记录作为典型的本地化电子数据,其本质是AES加密的SQLite数据库与结构化消息事件流的结合体。理解微信PC端的数据存储机制(如MSG0.db、密钥派生逻辑、时间戳偏移)是实现可靠提取的前提;而真正可用的导出能力,必须建立在对消息类型(文本/图片/语音/富媒体)和状态(撤回/编辑)的语义化解析之上。HTML导出强调可检索与离线交互,Word导出注重归档合规与样式稳定,CSV导出则需满足pandas开箱即用的数据工程标准。本方案不依赖网络API或UI自动化,全程本地只读处理,契合《个人信息保护法》对数

weixin_42524171的博客 315

Qwen3.5本地部署实战:4B模型在RTX3060上离线运行指南

大语言模型本地化部署正从云端服务转向终端设备,其核心是模型轻量化、硬件适配与推理引擎协同优化。基于INT4量化感知训练和GGUF格式支持,Qwen3.5在结构精简、Tokenizer轻量及显存友好性方面显著优于前代,使4B级别模型可在RTX 3060等中端显卡上稳定运行。该技术路径兼顾低延迟响应(<2秒)、数据隐私保障与离线可用性,广泛适用于法律文书分析、医疗文档处理、教育AI助手等对安全性与实时性双重要求的场景。本文聚焦Qwen3.5-4B量化部署全流程,涵盖llama.cpp编译调优、GPU层加载策略及

weixin_32181267的博客 363

PHP html富文本转Json错误

#####背景 商城的详情页面使用百度的富文本,存储在mysql中。 前端使用vue,所以在去取出来和其他数据一起转为json数据返回给前端的时候发生错误,json格式错误。打印发现是富文本里面有图片或者说是有 “” 双引号的原因,在网上找了一些方法说需要转义再存。后来觉得这种方法不是很适合,所以换了一种方法,使用 Base64 的方式 转为json前先把富文本的内容base64转化一...

cc2415的博客 1512

手把手教你调试eDP接口:Main Link信号异常、AUXCH通信失败怎么办?

本文提供了一份详尽的eDP接口调试实战指南,重点解决Main Link信号异常与AUXCH通信失败两大核心难题。文章系统介绍了从工具准备、信号完整性分析(眼图、抖动测量)到AUXCH协议解码、HPD信号检查的完整排查流程,并分享了链路训练诊断与常见避坑技巧,帮助硬件工程师高效定位并解决显示问题。

Jerry的专栏 828

js的一些简单方法

滚动事件 @scroll开启滚动事件 如何判断滚动到了底部 事件对象e里解构 const{scrollTop,clientHeight,scrollHeight}=e.target; 当 scrollTop+clientHeight+1 > scrollHeight时代表滚动到了底部 拖拽 //定义元素 letson=document.getElementsByClassName("my-card")[...............

hjdjhh的博客 871

Scrapy实现微博关键词爬虫(爬虫结果写入mongodb)

话不多说,上代码: spiders文件夹下的microBlogSpider.py里这样写: # -*- coding: utf-8 -*- import scrapy from scrapy import Spider, Request, FormRequest from scrapy.selector import Selector import datetime import random from blogSpider.items import microBlogItem, keyWordItem f

qq_39360565的博客 1779

超声波雾化驱动设计:专用芯片FM8118替代MCU的工程实践

超声波雾化是一种基于压电陶瓷谐振原理的高频能量转换技术,其核心在于在1.6–2.4MHz频段精准激励雾化片以实现高效水分子破碎。传统采用通用MCU配合分立MOSFET的方案受限于PWM频率上限、栅极驱动能力不足及EMI控制困难,导致雾化效率低、温升高、可靠性差。专用雾化芯片(如FM8118)通过集成2.1MHz振荡器、零电压开关(ZVS)控制与过流/过热双重保护,从架构层面解决高频功率驱动的本质约束,显著提升驱动效率(达83.7%)与系统鲁棒性。该技术广泛适用于桌面加湿器、医疗雾化器、农业微喷等对体积、功耗

weixin_34620658的博客 404

vue-cli3解除base64限制

背景:尝试了vue-cli3.0发现打包的时候,一些小于10k的图片没有转base64,这个和vue-cli2.0有些差异,需要自己单独进行配置,可是发现没有了原本webapck的一些配置问题件,需要自己新建一个vue.config.js的文件(在根目录),然后进行如下配置,就可以控制图片转义规则。 vue.config.js文件: module.exports = { chainWeb...

youngeffort的博客 4306

cadence Virtuoso ADE原理图库中的VCVS(压控电压源)使用

Symbol: vcvs (Voltage Controlled Voltage Source) Vop−Von=egain⋅(Vip−Vin)V_{op}-V_{on}=egain\cdot(V_{ip}-V_{in})Vop​−Von​=egain⋅(Vip​−Vin​) 所以可以得出 ⟹Vop=egain⋅(Vip−Vin)+Von\Longrightarrow V_{op}=egain\cdot(V_{ip}-V_{in})+V_{on}⟹Vop​=egain⋅(Vip​−Vin​)+Von​ 使

大学生视野 2万+

vue 解码base64_VUE Base64编码图片展示与转换图片

图片的 base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址,使用 base64 传输图片文件可以节省一个 http 请求,图片的 base64 编码可以算是前端优化的一环VUE Base64编码图片展示export default {data() {icon: 'data:image/png;base64,,XXXXX...',}}Base64编码转换图片base6...

weixin_39998859的博客 4067

ROS 之 使用yocs_velocity_smoother对机器人速度进行限制

yocs_velocity_smoother是一个速度、加速度限制器,用来防止robot navigation的速度/转速过快,加速度/快减速过大。Bound incoming velocity messages according to robot velocity and acceleration limits. The velocity smoother nodelet runs together with the kobuki_node to apply robot’s velocity and .

https://shixuebin.gitee.io/hexo-blog/ 2620

【即插即用模块】注意力篇 | MICCAI 2023 | MFE:多尺度特征提取,告别固定感受野,猛涨2个点!

本文提出一种用于低分辨率乳腺癌病理图像超分辨率与分类的网络SHISRCNet。针对现有方法处理低分辨率图像效果差、感受野固定等问题,设计了多特征提取模块(MFE),通过多速率空洞卷积覆盖全尺度感受野(局部到全局),结合递进残差连接和动态权重融合机制,实现自适应多尺度特征增强。实验表明,该模块在超分辨率任务中PSNR提升近2个点,分类准确率显著提高。代码提供详细注释,支持即插即用,适用于各类多尺度视觉任务。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 205

vue 获取服务端base64位图片之后的处理

`

每天都要努力学习哦~~ 3501

TIA Portal (博图) -两台不同网段S7-1200通信(上)

因为不同网段意味着它们默认不在同一个广播域,并且没有网关设备来处理路由,所以标准的 TCP/IP 通信(如 `TSEND_C`/`TRCV_C`)无法直接建立连接。S7 通信 (PUT/GET): 最简单,配置好连接后,在客户端 PLC 使用 `PUT` 指令发送数据到服务器 PLC,使用 `GET` 指令从服务器 PLC 读取数据。* 在地址详细信息中,确保 本地连接端点是客户端 PLC 的接口,远程连接端点是服务器 PLC 的接口和 IP (`192.168.2.20`)。

电工 2677

vue中怎么使用Base64加密解密

一 , npm ijs-base64 , 安装插件 二 , 需要用到base64的vue页面 , 直接写js代码使用 加密 mounted() { let Base64 = require('js-base64').Base64 console.log(Base64.encode('今天星期一')); }, 控制台打印 解密 mounted() { let Base64 = require('js-base64').Base6...

weixin_49577940的博客 2060

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

vue中使用Base64加密解密

vue中使用Base64加密解密

qq_43235503的博客 1532

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Java实现图片上传到数据库,并把上传的图片读取出来

技术选型 技术选型: SpringBoot Vue 技术方案: 采用数据库存储图片的方式,后端接口返回图片的base64流,插入数据库前对图片进行加密,接口查询进行解密。 实现 数据库 字段:head_portrait 类型:longblob 实体类属性设置 /** * 头像路径 */ @TableField("head_portrait") @Lob private byt...

频繁输入,积极输出 4824

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

uniapp中base64加密解密的实战应用与性能优化

本文详细探讨了在UniApp开发中Base64编码与解码的实战应用与性能优化。文章分析了为何Base64在跨平台场景下不可或缺,并对比了主流Base64库的优劣,推荐使用`base-64`库以确保多端兼容性。同时,深入讲解了处理图片等二进制数据、内存优化、URL安全编码及Unicode字符处理等进阶技巧,并通过一个“临时笔记”加密存储的完整案例,帮助开发者高效、安全地在UniApp项目中应用Base64技术。

weixin_29016865的博客 408

Vue2.0下使用base64对参数加密

1.项目需求 项目中要求对地址中传递的一个参数进行简单的明文加密 2.解决过程 2.1  一开始准备使用js的escape和unescape对参数加密但由于参数是由英文字母和下划线等符号组成,而js的escape和unescape函数只对中文字符进行加解密,遂放弃 2.1.1 js有一个函数是可以将内容转化为十六进制的。就是escape函数。可以讲值转化为16进制。如果有中文的话,就会出现...

qq_38055736的博客 1万+

Vue中使用base64编码和解码(我的使用场景:富文本、图片)

Vue中使用base64编码和解码(我的使用场景:富文本、图片) 1、在项目根目录下安装 npm install –save js-base64 2、在项目文件中引入 let Base64 = require(‘js-base64’).Base64 3、在项目文件中使用 Base64.encode(‘哆啦莓’) // 5ZOG5ZWm6I6T Base64.decode(‘5ZOG5ZWm6I6T’) // 哆啦莓 ...

weixin_44274094的博客 1488

VUE JS 图片文件上传过程中进行RSA加密

VUE JS 图片文件上传过程中进行RSA加密

qq_22689825的博客 2147

php 处理vue上传图片 base64_encode file_put_contents file_get_contents

vue:上传图片实际上是获取图片二进制流,并通过base64加密,前头会加上data:image/png;base64,带有然后传给后台 类似:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANIAAAFYCAYAAAA php: 去掉data:image/png;base64,并base64_decode解密 $base6...

mengzuchao的专栏 1189
上一篇: 【AUTOID UTOUCH(C) H5+app 】
下一篇: Echarts 柱状图重叠展示 总量和部分量
小孙爱出bug
博客等级 码龄5年 73粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值