【发布时间】:2015-11-16 10:35:21
【问题描述】:
在快递中,我从以下位置获取基本身份验证:
req.headers.authorization
我回来了
dXNlcm5hbWU6cGFzc3dvcmQ=
我说“嘿,这看起来像 base64”。我很快找到其中一个base64 sites 并对其进行解码,结果是'username:password'。所以我用谷歌搜索了如何在 express 4 中解码 base64。我最终得到了这段代码:
console.log(new Buffer(req.headers.authorization.toString(), 'base64').toString('ascii'));
那是返回:
+"qUMI95iAMM]=I
这不是username:password。我也尝试过使用utf8 设置,但也没有用。我也在req.headers.authorization 上尝试了没有toString() 的情况。如何使用 expressjs 正确解码 base64?
【问题讨论】:
-
它对我来说很好用:
console.log(new Buffer('dXNlcm5hbWU6cGFzc3dvcmQ=', 'base64').toString('ascii'));输出:username:password。此外,对于已经是字符串的值,您不需要.toString()。
标签: javascript node.js express base64