加密图片本地解密后使用blod文件打开

2023-10-17 06:20

本文主要是介绍加密图片本地解密后使用blod文件打开,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在日常开发中,我们常常需要对一些文件进行加密,例如:图片等资源。例如: 某书就对一些资源进行了加密,然后通过对应的密钥解密后,然后通过blod打开(blod路径少,base64的路径太长了)。当然,我们在这里也不会对其加密解密进行分析。我们可以学习下加密图片本地解密后转为blod本地路径。
话不多说,直接上思路
    • 发送请求拉取加密数据

this.$axios({url: this.fileUrl,method: "GET"
}).then(function(e) {// 这里对加密的数据进行解密,具体实现看自己的业务设计const base64 = decryptFn(e); //decryptFn这里就是解密的函数,这里我们可以将其转为base64
}).catch(function(t) {})
    • base64转为Blob

// 这里用的参数 就是上面解密后的base64文件
dataURLtoBlob(base64) {var base64Arr = base64.split(",");var imgtype = "";var base64String = "";if (base64Arr.length > 1) {//如果是图片base64,去掉头信息base64String = base64Arr[1];imgtype = base64Arr[0].substring(base64Arr[0].indexOf(":") + 1,base64Arr[0].indexOf(";"));}// 将base64解码var bytes = atob(base64String);//var bytes = base64;var bytesCode = new ArrayBuffer(bytes.length);// 转换为类型化数组var byteArray = new Uint8Array(bytesCode);// 将base64转换为ascii码for (var i = 0; i < bytes.length; i++) {byteArray[i] = bytes.charCodeAt(i);}// 生成Blob对象(文件对象)return new Blob([bytesCode], {type: imgtype});
}
    • 页面使用blob:...来展示图片

// javasctipt
const blob = window.URL.createObjectURL(dataURLtoBlob(base64))// html
<img src=blob/>
    • 最后效果如下

完结撒花✿✿ヽ(°▽°)ノ✿

这篇关于加密图片本地解密后使用blod文件打开的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/223502

相关文章

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

go rate 原生标准限速库的使用

《gorate原生标准限速库的使用》本文主要介绍了Go标准库golang.org/x/time/rate实现限流,采用令牌桶算法控制请求速率,提供Allow/Reserve/Wait方法,具有一定... 目录介绍安装API介绍rate.NewLimiter:创建限流器limiter.Allow():请求是否

Python使用Turtle实现精确计时工具

《Python使用Turtle实现精确计时工具》这篇文章主要为大家详细介绍了Python如何使用Turtle实现精确计时工具,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录功能特点使用方法程序架构设计代码详解窗口和画笔创建时间和状态显示更新计时器控制逻辑计时器重置功能事件

Swagger2与Springdoc集成与使用详解

《Swagger2与Springdoc集成与使用详解》:本文主要介绍Swagger2与Springdoc集成与使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1. 依赖配置2. 基础配置2.1 启用 Springdoc2.2 自定义 OpenAPI 信息3.

Golang interface{}的具体使用

《Golanginterface{}的具体使用》interface{}是Go中可以表示任意类型的空接口,本文主要介绍了Golanginterface{}的具体使用,具有一定的参考价值,感兴趣的可以了... 目录一、什么是 interface{}?定义形China编程式:二、interface{} 有什么特别的?✅

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设

Spring 缓存在项目中的使用详解

《Spring缓存在项目中的使用详解》Spring缓存机制,Cache接口为缓存的组件规范定义,包扩缓存的各种操作(添加缓存、删除缓存、修改缓存等),本文给大家介绍Spring缓存在项目中的使用... 目录1.Spring 缓存机制介绍2.Spring 缓存用到的概念Ⅰ.两个接口Ⅱ.三个注解(方法层次)Ⅲ.

PyTorch中cdist和sum函数使用示例详解

《PyTorch中cdist和sum函数使用示例详解》torch.cdist是PyTorch中用于计算**两个张量之间的成对距离(pairwisedistance)**的函数,常用于点云处理、图神经网... 目录基本语法输出示例1. 简单的 2D 欧几里得距离2. 批量形式(3D Tensor)3. 使用不

C#使用MQTTnet实现服务端与客户端的通讯的示例

《C#使用MQTTnet实现服务端与客户端的通讯的示例》本文主要介绍了C#使用MQTTnet实现服务端与客户端的通讯的示例,包括协议特性、连接管理、QoS机制和安全策略,具有一定的参考价值,感兴趣的可... 目录一、MQTT 协议简介二、MQTT 协议核心特性三、MQTTNET 库的核心功能四、服务端(BR