node.JS md5加密中文与php结果不一致的解决方法


Posted in Javascript onMay 05, 2017

因项目需要,需要Node.js与PHP做接口调用,发现node.js对中文使用md5加密与php对中文md5加密的结果不同。

PHP

<?php
$str = '程序员';
echo $str.' md5:'.md5($str);
?>

输出:

程序员 md5:72d9adf4944f23e5efde37f6364c126f

node.JS

var crypto = require('crypto');

var md5 = function(str){
 var crypto_md5 = crypto.createHash('md5');
 crypto_md5.update(str);
 return crypto_md5.digest('hex');
}

var str = '程序员';
var result = str + ' md5:' + md5(str);
console.log(result);

输出:

程序员 md5:1b6ad7846ec870e78363d1db4fb2a0ff

经查阅资料发现是编码问题,只要在node.JS中加入编码即可解决问题。

解决方法如下:

var crypto = require('crypto');
var md5 = function(str){
 var crypto_md5 = crypto.createHash('md5');
 crypto_md5.update(str, 'utf8'); // 加入编码
 return crypto_md5.digest('hex');
}
var str = '程序员';
var result = str + ' md5:' + md5(str);
console.log(result);

输出:

程序员 md5:72d9adf4944f23e5efde37f6364c126f

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
html下载本地
Jun 19 Javascript
onkeydown事件解决按回车键直接提交数据的需求
Apr 11 Javascript
javascript判断非数字的简单例子
Jul 18 Javascript
使用js在页面中绘制表格核心代码
Sep 16 Javascript
jQuery实现tag便签去重效果的方法
Jan 20 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
Jul 04 Javascript
js实现可键盘控制的简单抽奖程序
Jul 13 Javascript
打造自己的jQuery插件入门教程
Sep 23 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Oct 05 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
Jan 13 Javascript
vue 父组件通过v-model接收子组件的值的代码
Oct 27 Javascript
jquery中封装函数传递当前元素的方法示例
May 05 #jQuery
使用JS在浏览器中判断当前网络连接状态的几种方法
May 05 #Javascript
js实现倒计时关键代码
May 05 #Javascript
javascript 中的继承实例详解
May 05 #Javascript
JavaScript函数表达式详解及实例
May 05 #Javascript
Node.js中的http请求客户端示例(request client)
May 04 #Javascript
Bootstrap布局之栅格系统学习笔记
May 04 #Javascript
You might like
PHP处理SQL脚本文件导入到MySQL的代码实例
2014/03/17 PHP
利用谷歌 Translate API制作自己的翻译脚本
2014/06/04 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
PHPWind9.0手动屏蔽验证码解决后台关闭验证码但是依然显示的问题
2016/08/12 PHP
php实现微信公众号创建自定义菜单功能的实例代码
2019/06/11 PHP
Laravel框架验证码类用法实例分析
2019/09/11 PHP
用JavaScript调用WebService的示例
2008/04/07 Javascript
javascript 动态添加事件代码
2008/11/30 Javascript
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
jquery1.4 教程二 ajax方法的改进
2010/02/25 Javascript
一些常用且实用的原生JavaScript函数
2010/09/08 Javascript
javascript权威指南 学习笔记之javascript数据类型
2011/09/24 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
javascript截取字符串小结
2015/04/28 Javascript
js实现获取当前时间是本月第几周的方法
2015/08/11 Javascript
jquery对象访问是什么及使用方法介绍
2016/05/03 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
Vue的轮播图组件实现方法
2018/03/03 Javascript
node express使用HTML模板的方法示例
2019/08/22 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
Python中文件遍历的两种方法
2014/06/16 Python
python常见的格式化输出小结
2016/12/15 Python
Python 使用os.remove删除文件夹时报错的解决方法
2017/01/13 Python
Python3 全自动更新已安装的模块实现
2020/01/06 Python
Python selenium页面加载慢超时的解决方案
2020/03/18 Python
python如何快速生成时间戳
2020/07/21 Python
纯css3实现的鼠标悬停动画按钮
2014/12/23 HTML / CSS
印度和世界各地的精美产品:Ikka Dukka
2018/02/12 全球购物
关工委先进个人事迹材料
2014/05/23 职场文书
2014年医生工作总结
2014/11/21 职场文书
合作合同协议书范本
2015/01/27 职场文书
幼儿园六一主持词
2015/06/30 职场文书
只用Python就可以制作的简单词云
2021/06/07 Python
铁拳制作人赞《铁拳7》老头环Mod:制作精良 但别弄了
2022/04/03 其他游戏