我正在尝试从响应中的标头中收到的url中获取一些参数。具体来说,主机以标头(而非正文)中的数据作为响应。
要从标题中获取值,请使用以下代码:
let header = req.get('location');
其中“位置”是“键”,“值”是“ http://examplesite.com/oauth?code=1234&state=4321”。
我需要从网址中获取值“ code”和“ state”,除了substring(),search(),...之外,我还可以尝试其他解决方案吗?由于可以发送不同的uri和参数,因此我放弃了这些选项。
我正在使用nodejs 10并表示4。
答案 0 :(得分:1)
使用url
内置模块。特别是将parseQueryString
设置为true的url.parse()
方法。
var url = require('url');
var stringUrl = req.get('location'); //'http://examplesite.com/oauth?code=1234&state=4321';
var { code, state } = url.parse(stringUrl, true).query;
console.log("Code "+code, "State "+state); //Code 1234 State 4321