javascript 的排序问题

2015-09-23 11:17:14 +08:00
 kanezeng
很多开放的 api 在调用的时候需要对参数做 md5 或 sha 的签名。
签名的第一步通常是对所有参数排序,然后拼接成一个串,再计算签名。
这一步有没有比较好的解决方案呢?多谢。
2452 次点击
所在节点    JavaScript
4 条回复
BuilderQiu
2015-09-23 11:21:52 +08:00
不是按顺序取出来拼接么
sneezry
2015-09-23 11:24:23 +08:00
基本都是 key 名字典排序吧
bertonzh
2015-09-23 11:29:37 +08:00
我见过的都是字母排序, sort() 即可。
params = {
b: 3,
a: 2
}

Object.keys(params).sort().map(function(key) {
return encode...(key) + '=' + encode...(params[key])
}).join('&')
kanezeng
2015-09-23 11:34:03 +08:00
@bertonzh 多谢啊,初入 javascript 服务器端,还不熟悉,是我想复杂了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/223020

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX