浅谈使用postman的CryptoJS.MD5加密带有中文(已进行unicode编码)以及url的字符串与md5在线加密工具加密不一致的原因,附加解决方法。
废话不多说,直接上代码以及加密结果:
1.在postman中,使用CrytoJS.MD5加密带有中文字符串:
此处列举了转码前后转码(unicode)后的加密结果。
2.使用MD5在线加密工具对字符串进行加密:
加密转码后的字符串(32位小写)
直接加密未转码的字符串(32位小写):
从上面几种的加密结果可以看出,postman的CrytoJS.MD5对已转码的中文字符串进行加密时,不会直接加密转码后的字符串,会将转码后的字符串重新转码成中文加密。
3.加密使用了转义字符的url:
postman的加密结果
MD5在线加密的结果(32位小写):
加密使用了转义字符的url(32位小写加密)
从上面几种的加密结果可以看出,postman的CrytoJS.MD5对已转义的URL字符串进行加密时,不会直接加密转码后的字符串,会将转码后的字符串重新转码成原本的url加密
解决方案:
1.解决postman对unicode编码后的内容进行加密处理时,会重新转码成中文加密的方法是,在转码后的字符串前,加转义字符,如:
2.解决postman对转义后的url内容进行加密处理时,仍会对原url进行加密处理的方法:在已经转义的url前,在加一个转义符号,如:
小结:
由于我们后端是php语言,在生成接口签名时,需要对中文和url进行转义处理,并且是对转义后的结果进行加密,所以我之前一直无法使用postman生成正确的验签,通过上述例子的比较,我得出一个结论:postman对字符串加密时,不会直接处理转义、转码后的内容,而是会对原内容进行处理,为了规避postman这样的处理机制,我们只需要对转义后的内容在转义一次,然后在进行加密处理,即可得到与MD5在线加密工具加密后一样的内容。
------------------------------------------------------------------------------------------------学海无涯
浅谈使用postman的CryptoJS.MD5加密带有中文(已进行unicode编码)以及url的字符串与md5在线加密工具加密不一致的原因,附加解决方法。相关推荐
- SVN冲突出现原因及解决方法浅谈
SVN冲突出现原因及解决方法浅谈 参考文章: (1)SVN冲突出现原因及解决方法浅谈 (2)https://www.cnblogs.com/andy1202go/p/8085062.html 备忘一下 ...
- python open找不到文件的原因_浅谈python在提示符下使用open打开文件失败的原因及解决方法...
题目:在提示符下使用open打开一个文件 刚开始网上看了下打开的方式,结果一直实现不了,报错是没找到这个文件,而且和我输入的文件名不一样. 错误如下: >>>open('d:\456 ...
- python表格对齐_浅谈python str.format与制表符\t关于中文对齐的细节问题
写了一个练手的爬虫...在输出的时候出现了让人很不愉♂悦的问题 像这样: 令人十分难受啊! #------------------------------------------ 在此之前先说一下py ...
- python制表符对齐_浅谈python str.format与制表符\t关于中文对齐的细节问题
写了一个练手的爬虫...在输出的时候出现了让人很不愉♂悦的问题 像这样: 令人十分难受啊! #------------------------------------------ 在此之前先说一下py ...
- 关于python格式对齐的问题_[宜配屋]听图阁 - 浅谈python str.format与制表符\t关于中文对齐的细节问题...
写了一个练手的爬虫...在输出的时候出现了让人很不愉♂悦的问题 像这样: 令人十分难受啊! #------------------------------------------ 在此之前先说一下py ...
- 谈Incompatible JVM问题的原因与解决方法
浅谈Incompatible JVM问题的原因与解决方法 运行eclipse出现以下错误:Incompatible JVM 的对话框,内容如下: Version 1.3.1_01 of the JVM ...
- 在Javascript 中的Base64加密,支持中文加密及emoji表情的unicode编码的base64加密
转载高人分享的Base64加密. 解决了楼主在使用webscoket做web了聊天接口时出现的emoji表情的unicode编码的base64加密错误问题. (function(global) { ' ...
- 浅谈如何fltk项目编译和实现显示中文
目录 一.编译 二.中文显示如何处理: 2.1在发文2天前突然发现,我这个界面显示英文出现问题了,开始我的搜索之旅,一些参考页面有碰到问题也可以看看: 2.2. 那就开始翻翻官方自带的例程吧,看看他如 ...
- 网络推广计划浅谈新站在前期收录少的原因及解决方法!
网站在前期而言,被SEO蜘蛛抓取的频次很少的话有时候也让网络推广计划优化人员很捉急,想要让我们想要的内容被百度抓取并给予权重就需要合理的调配网站权重分配,那么网站新站需要如何分配站内资源呢?怎样分配才 ...
- 浅谈深浅拷贝问题(这里只针对拷贝构造函数和赋值运算符重载)和简易srting类模拟实现
浅谈深浅拷贝问题(这里只针对拷贝构造函数和赋值运算符重载)和简易srting类模拟实现 文章目录 浅谈深浅拷贝问题(这里只针对拷贝构造函数和赋值运算符重载)和简易srting类模拟实现 一.什么是浅拷 ...
最新文章
- html向js传递id
- Django在Win7下安装与创建项目hello word示例
- Box-Cox(python实现)
- avalon.js实践 svg地图配置工具
- Kafka 3.0重磅发布,都更新了些啥?
- Orleans 知多少 | Orleans 中文文档上线
- 转载:必须掌握的八个【cmd 命令行】
- 苹果已招聘两名梅赛德斯前工程师 其中一人曾在保时捷工作近6年
- ami编码设计流程图_专用设备转向系统电控单元设计
- Windows Phone 7知识锦分享【第二季】
- Java 异常的捕获与处理详解 (一)
- Linux运维基础入门(二):网络基础知识梳理02
- linux 配置ssh免密码登录脚本
- Linux服务器安装mysql
- 如何在 vuepress 中添加博客导流公众号-即输入验证码解锁全站文章
- 直接使用 Microsoft WinPE 工具 安装大于 4GB 的 WIM 文件
- 「BJOI 2019」勘破神机
- html5+css3实现2D动画效果演示
- VS2015安装失败KB3022398 KB3165756
- 四、【入门篇】官方LIB库、位带操作