思路:

Node 路由示例:
/**
* 请自定义 restful API 这里以 GET 为例
* @param {req}
* @param {res}
* @return {next()}
*/
//var util = require('utility');
exports.encryption = function(req, res){
//GET
var name = req.query.name
, jsStr // 用于 服务端渲染的 js 脚本
, doc = {
n : '支持请求参数',
};
// isSafe : 常规安全字符判断
if (fun.isSafe(name)) doc['n'] = name;
/////////////////需要加密的js 业务代码 start/////////////////////
jsStr = function(n){
alert('开始执行业务代码~')
// 变量 N 可以是某些 之前需要 服务端渲染的 信息
// 比如 自产 的 url 之类
function sayHello(s){
alert('您输入了: '+s);
}
sayHello(n);
//
}
//////////////////需要加密的js 业务代码 end////////////////////
jsStr = '('+jsStr.toString()+')("'+( name ? doc.n : '默认的')+'")';
var key = util.md5('highsea90'+Date.now())
var resStr = myFromCharCode(key, jsStr);
res.render('cm/eval',{
title : 'js 加密 demo',
charCode : escape(myFromCharCode.toString()),
data : escape(resStr),
key : key
})
};
/**
* @param {m}密钥
* @param {text}文本
* @return {last}加密文本
*/
function myFromCharCode (m, text){
var last = '';
for (var i = 0 , l = text.length; i < l; i++) {
for (var j = 0, k = m.length; j < k; j++) {
var key = m.charCodeAt(j)
, text2 = text.charCodeAt(i) ^ key
}
last += String.fromCharCode(text2);
}
return last;
}
客户端 页面示例:
<!DOCTYPE html>
<html>
<head>
<title><%=title%></title>
</head>
<body>
<script type="text/javascript">
// 执行 约定的 加密算法
eval(unescape("<%=charCode%>"));
// 服务端加密后的 字符串 用约定的 算法进行解密
var str = myFromCharCode("<%=key%>", unescape("<%=data%>"));
// 执行业务代码
eval(str);
</script>
</body>
</html>
代码演示
一个小录像:
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# NodeJS
# 加密
# 获取本机IP地址的实例(JavaScript / Node.js)
# nodejs获取本机内网和外网ip地址的实现代码
# 详解node HTTP请求客户端 - Request
# nodejs socket服务端和客户端简单通信功能
# Node.js中的http请求客户端示例(request client)
# 使用node.js 获取客户端信息代码分享
# nodejs socket实现的服务端和客户端功能示例
# nodejs(officegen)+vue(axios)在客户端导出word文档的方法
# nodejs简单实现TCP服务器端和客户端的聊天功能示例
# node.js中express模块创建服务器和http模块客户端发请求
# 解决Node.js mysql客户端不支持认证协议引发的问题
# node获取客户端ip功能简单示例
# 服务端
# 客户端
# 自定义
# 为例
# 后端
# encryption
# exports
# function
# require
# util
# var
# utility
# alert
# start
# sayHello
# url
# fun
# jsStr
# query
# isSafe
相关文章:
如何在景安云服务器上绑定域名并配置虚拟主机?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
广州顶尖建站服务:企业官网建设与SEO优化一体化方案
定制建站方案优化指南:企业官网开发与建站费用解析
建站主机无法访问?如何排查域名与服务器问题
做企业网站制作流程,企业网站制作基本流程有哪些?
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
c# 在ASP.NET Core中管理和取消后台任务
我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?
如何快速完成中国万网建站详细流程?
如何选择网络建站服务器?高效建站必看指南
建站之星北京办公室:智能建站系统与小程序生成方案解析
定制建站是什么?如何实现个性化需求?
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
建站之星安装需要哪些步骤及注意事项?
代刷网站制作软件,别人代刷火车票靠谱吗?
如何使用Golang安装API文档生成工具_快速生成接口文档
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
全景视频制作网站有哪些,全景图怎么做成网页?
如何正确下载安装西数主机建站助手?
宝塔面板如何快速创建新站点?
网页设计与网站制作内容,怎样注册网站?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
如何用美橙互联一键搭建多站合一网站?
音响网站制作视频教程,隆霸音响官方网站?
,巨量百应是干嘛的?
Android自定义控件实现温度旋转按钮效果
建站之星在线客服如何快速接入解答?
如何基于PHP生成高效IDC网络公司建站源码?
枣阳网站制作,阳新火车站打的到仙岛湖多少钱?
如何快速搭建虚拟主机网站?新手必看指南
建站之家VIP精选网站模板与SEO优化教程整合指南
深圳网站制作案例,网页的相关名词有哪些?
大同网页,大同瑞慈医院官网?
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
如何在IIS中新建站点并配置端口与物理路径?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
北京专业网站制作设计师招聘,北京白云观官方网站?
音乐网站服务器如何优化API响应速度?
黑客如何利用漏洞与弱口令入侵网站服务器?
jQuery 常见小例汇总
如何通过万网虚拟主机快速搭建网站?
家具网站制作软件,家具厂怎么跑业务?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
ppt制作免费网站有哪些,ppt模板免费下载网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。