如何在 Node.js 中获取未编码的查询参数
How to get unencoded Query Parameter in Node.js
我正在执行 Google Oath2 实施。对于特定的 authorization_code
,我不断得到 invalid_grant
。我检查了值,发现查询字符串值被编码了。
这是一个例子:
const parser = require('url');
url ='http://example.com/test?param=4%2F12'
const q = parser.parse(url, true).query
console.log(q)
我这里的输出是
{ param: '4/12' }
我希望我的输出是
{ param: '4%2F12' }
因为正确的授权码是一个字符串,值为 4%2F12
。我该如何实施?可能有
许多手动方法可以做到这一点。任何需要简约代码工作的东西都将不胜感激。提前致谢!
简单。只需使用 encodeURIComponent
.
再次对参数进行编码
示例:
console.log(encodeURIComponent("4/12")) // Output: 4%2F12
我正在执行 Google Oath2 实施。对于特定的 authorization_code
,我不断得到 invalid_grant
。我检查了值,发现查询字符串值被编码了。
这是一个例子:
const parser = require('url');
url ='http://example.com/test?param=4%2F12'
const q = parser.parse(url, true).query
console.log(q)
我这里的输出是
{ param: '4/12' }
我希望我的输出是
{ param: '4%2F12' }
因为正确的授权码是一个字符串,值为 4%2F12
。我该如何实施?可能有
许多手动方法可以做到这一点。任何需要简约代码工作的东西都将不胜感激。提前致谢!
简单。只需使用 encodeURIComponent
.
示例:
console.log(encodeURIComponent("4/12")) // Output: 4%2F12