本帖最后由 Timothy.Xu 于 2020-12-24 09:13 编辑
本插件为服务端命令,使用本插件可以将字符串进行Base64加密/解密操作。
版本更新记录
操作步骤
1. 在“版本更新记录”表中,下载对应版本的插件。如何安装或卸载插件?
2.安装插件并重启活字格设计器后,服务端命令中就可以找到刚安装好的“Base64加密”命令。
3.该插件有3个输入和1个输出:
加密或解密 | 输入值 | 选择编码方式为加密或解密 | 原字符串 | 输入值 | 传入待加密/解密字符串 | 分别对每行进行编码 | 输入值 | 是否忽略换行符对多行数据进行编码 | 返回结果至参数 | 输出值 | 将加密/解密后的字符串传入一个新的参数中 |
4.前端页面调用该服务端命令即可。
举例
首先需要准备两个基础类型的的参数(需要从前端传入两个值到服务端命令):
在条件命令下判断参数“是否分别对每行编码”的值是否为1,如果为1,则创建一个“Base64加密”命令,将“加密或解密”选择为“加密”,将“原字符串”选择为参数“原字符串”,勾选“分别对每行进行编码”,“返回结果至参数”设置一个新的参数“编码后字符串”:
将参数“编码后字符串”用返回命令返回到前端:
这样就做好一个可以让用户自行判断是否对多行进行编码的Base64加密服务端命令了。同理,可以复制本服务端命令,将其中的“加密”选项更改为“解密”,就可以实现Base64解密:
在前端,将一个复选框的值传给参数“是否分别对每行编码”,将一个多行文本框的值传给参数“原字符串”,并返回信息至另一个字符串:
实现效果:
注意
1.Base64是一种数据编码方式,目的是让数据符合传输协议的要求。标准Base64编码解码无需额外信息即完全可逆,即使您自己自定义字符集设计一种类Base64的编码方式用于数据加密,在多数场景下也较容易破解,因此不能用于加密传输。 2.Base64加密有多种编码方式,一般我们常用的有ASCII、UTF-8等,本帖提供的插件使用的是UTF-8编码方式,目的是为了支持中文使用场景。
应用场景
1.邮件
由于rfc821有以下两条限制:
- 1)邮件的内容必须全部为7-比特的美国ascii码
- 2)每一行的长度不能超过1000的字符
当邮件中有其他的非ASCII字符或二进制数据时,就需要做转换。这个就叫做Content-Transfer-Encoding,Base64就是其中的一种方法。在firefox你可以设置自己发送邮件的内容传输编码方式。在收到的邮件里,可以查看邮件原文,看看原文的编码。 2.URL 有些应用需要把二进制数据放到URL里,URL只能是特定的一些ASCII字符。这时候,也需要用到BASE64编码。当然这也只是对二进制数据本身的编码,编码后的数据里面可能包含+/,真正放到URL里面时候,还需要URL-Encoding,变成%XX模式。
当然还有很多应用场景,可以按需取用。这边提供了一个示例工程文件,旨在帮助各位更好地使用插件~ |