末备案网站如何做cdn,怎么宣传自己的店铺,贵州做网站的公司有哪些,菜户营做网站通过路由上的参数生成唯一md5和路由上token做验证_md5 token-CSDN博客 前言#xff1a;基于这篇文章我们做网页是否超时#xff0c;网页是否过期的处理。打开一个网页允许他在一定时间内可以访问#xff0c;过了这个时间就不可以访问了#xff0c;encrypt是h5加密方法…
通过路由上的参数生成唯一md5和路由上token做验证_md5 token-CSDN博客 前言基于这篇文章我们做网页是否超时网页是否过期的处理。打开一个网页允许他在一定时间内可以访问过了这个时间就不可以访问了encrypt是h5加密方法看看上面的文档
解释其实原理也很简单就是设置一个过期时间加到了当前时间上然后再解析的地方获取一下这个过期时间的值和当前时间做个比较就行了 var tokenExpireSec Math.floor(Date.now() / 1000) 20 // 在当前时间上30s表示30s之后过期 用到的地方 var currentSeconds Math.floor(Date.now() / 1000); // 拿到当前时间 if (currentSeconds tokenExpireSec) { return 网页鉴权超时 } 设置过期时间
var webExpireSec 300; // 网页有效期(秒)var expireSec Math.floor(Date.now() / 1000) webExpireSec;var token encrypt(videoId timestamp ui_control expireSec) - expireSec; 解析时间是否过期的地方通过-分割判断当前时间是否大于设置的过期时间大于则网页过期
let token new URLSearchParams(location.search).get(token)let tokenArr token.split(-);
if (tokenArr.length 2) {token tokenArr[0];// 判断是否过期let currentSeconds Math.floor(Date.now() / 1000);let tokenExpireSec parseInt(tokenArr[1]);if (currentSeconds tokenExpireSec) {return 网页鉴权超时}sysToken md5(videoId timestamp ui_control tokenArr[1]);
}
备注也可以用时间来单独做md5加密不用混杂videoId timestamp ui_control这些字段也ok的 其他
npm引用
import CryptoJS from crypto-js;/*** md5* param {string|Buffer} data* see https://tool.xuexiareas.com/encryption/md5* returns {string} 小写16进制*/
const md5 (data: string) {return CryptoJS.MD5(data).toString();
}
script引用crypto-jshttps://github.com/brix/crypto-js 添加好友备注【进阶学习】拉你进技术交流群