Node.js 数据加密传输浅析


Posted in Javascript onNovember 16, 2016

前言

数据加密传输,大家经常接触几个方式一个是密文传输,一个明文传输密文传输,就是用密钥对数据加密,使用公钥对数据解密,传输的通道可以是https的也可以是http的。明文传输,前提是建立一个安全的传输通道,这里使用证书对通道的安全做了防护,然后传输数据,使用的是明文。

比较专业的 可以后面慢慢分享,不过这里我就介绍下明文传输,如果是用nodejs建立安全通道

使用两个库,分别是urllib和request,这里的证书只介绍使用pfx文件

urllib库的方式

const urllibRequest = (url, method, data, pfx, pass) => {
 return new Promise(function(resolve, reject) {
  let options = {
   data: data,
   method: method,
   pfx: pfx,
   passphrase: pass,
   rejectUnauthorized: false
  }
  urllib.request(url, options, function(err, data, res) {
   if (err) {
    return reject(err);
   }
   return resolve(data.toString());
  });
 });
}

request库的方法

const httpRequest = (url, method, data, pfx, pass) => {
 return new Promise((resolve, reject) => {
  let options = {
   url: url,
   method: method,
   form: data,
   headers: {
    'Content-type': 'application/x-www-form-urlencoded'
   },
   agentOptions: {
    pfx: pfx,
    passphrase: pass,
    rejectUnauthorized: false
   }
  };
  request(options, function(err, httpResponse, data) {
   if (err) {
    return reject(err);
   }
   return resolve(data);
  })
 });
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
JS 强制设为首页的代码
Jan 31 Javascript
淘宝搜索框效果实现分析
Mar 05 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
Feb 27 Javascript
js解析json读取List中的实体对象示例
Mar 11 Javascript
javascript动态生成树形菜单的方法
Nov 14 Javascript
有关jQuery中parent()和siblings()的小问题
Jun 01 Javascript
微信小程序实现实时圆形进度条的方法示例
Feb 24 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
May 24 Javascript
基于layui table返回的值的多级嵌套的解决方法
Sep 19 Javascript
BootstrapValidator实现表单验证功能
Nov 08 Javascript
Node.js操作MongoDB数据库实例分析
Jan 19 Javascript
node.js使用express-fileupload中间件实现文件上传
Jul 16 Javascript
JS中substring与substr的用法
Nov 16 #Javascript
微信小程序 网络请求(GET请求)详解
Nov 16 #Javascript
微信小程序 POST请求(网络请求)详解及实例代码
Nov 16 #Javascript
微信小程序 swiper组件轮播图详解及实例
Nov 16 #Javascript
input框中的name和id的区别
Nov 16 #Javascript
微信小程序 页面传参实例详解
Nov 16 #Javascript
JS中关于事件处理函数名后面是否带括号的问题
Nov 16 #Javascript
You might like
帝国cms常用标签汇总
2015/07/06 PHP
详解PHP安装mysql.so扩展的方法
2016/12/31 PHP
js日历功能对象
2012/01/12 Javascript
js中文逗号转英文实现
2014/02/11 Javascript
js使用for循环与innerHTML获取选中tr下td值
2014/09/26 Javascript
推荐一款jQuery插件模板
2015/01/09 Javascript
浅析$.getJSON异步请求和同步请求
2016/06/06 Javascript
JS检测页面中哪个HTML标签触发点击事件的方法
2016/06/17 Javascript
vuejs父子组件之间数据交互详解
2017/08/09 Javascript
vue实现element-ui对话框可拖拽功能
2018/08/17 Javascript
python 图片验证码代码分享
2012/07/04 Python
Python常用正则表达式符号浅析
2014/08/13 Python
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
python控制台中实现进度条功能
2015/11/10 Python
使用Python的urllib和urllib2模块制作爬虫的实例教程
2016/01/20 Python
Python 模拟购物车的实例讲解
2017/09/11 Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
2018/07/12 Python
Appium Python自动化测试之环境搭建的步骤
2019/01/23 Python
python线程定时器Timer实现原理解析
2019/11/30 Python
浅析Python模块之间的相互引用问题
2021/02/26 Python
HTML5中的nav标签学习笔记
2016/06/24 HTML / CSS
巴西最大的玩具连锁店:Ri Happy
2020/06/17 全球购物
关于.NET, HTML的五个问题
2012/08/29 面试题
什么是makefile? 如何编写makefile?
2013/01/02 面试题
会计毕业自我鉴定
2014/02/05 职场文书
党员干部一句话承诺
2014/05/30 职场文书
法学求职信
2014/06/22 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
2014年控辍保学工作总结
2014/12/08 职场文书
街道党风廉政建设调研报告
2015/01/01 职场文书
单位接收函范文
2015/01/30 职场文书
企业爱心捐款倡议书
2015/04/27 职场文书
2015年员工试用期工作总结
2015/05/28 职场文书
2019年教师入党申请书
2019/06/27 职场文书
python xlwt模块的使用解析
2021/04/13 Python
浅谈Python协程asyncio
2021/06/20 Python