uniapp MD5加密

安装:

npm install js-md5 -D

引入:

import Md5 from 'js-md5'

需求加密一个对象,

javascript 复制代码
login_form: {
					openId: '123456789',
					phone: '',
					scenario: '656677',
					phoneSessionKey: '',
					openIdSessionKey: '',
					timeStamp: '',
},
//10位时间戳(秒)
const currentDate = new Date();
this.login_form.timeStamp = Math.floor(currentDate.getTime() / 1000);
//新的对象添加一个字段,用来生成签名
const newlogin_form = {
	...this.login_form,
	secretKey: "secretKey_key", //密钥
};
const sortedEntries = Object.entries(newlogin_form)
		.filter(([key, value]) => value) // 过滤掉值为空的字段
		.sort(([keyA], [keyB]) => keyA.localeCompare(keyB)); // 按键字母顺序排序
const data = sortedEntries
		.map(([key, value]) => `${key}=${value}`) // 将键值对转换为 "key=value" 格式
		.join('&'); // 用 '&' 连接
console.log(data, "加密前的");
let password_md5 = Md5(data);
console.log(password_md5, "加密后的数据");
this.login_form.signature = password_md5
相关推荐
敲敲了个代码3 小时前
从硬编码到 Schema 推断:前端表单开发的工程化转型
前端·javascript·vue.js·学习·面试·职场和发展·前端框架
想回家的一天3 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y3 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
Jay_Franklin4 小时前
SRIM通过python计算dap
开发语言·python
dly_blog4 小时前
Vue 响应式陷阱与解决方案(第19节)
前端·javascript·vue.js
Slow菜鸟4 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
消失的旧时光-19435 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir5 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
tap.AI5 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能
console.log('npc')5 小时前
Table,vue3在父组件调用子组件columns列的方法展示弹窗文件预览效果
前端·javascript·vue.js