如何在ExpressJS中访问带点的查询参数



想象一下,我收到了以下带有查询参数的传入请求

https://api.myawesomeapi.com/v1/facebook/group_app_install_hook?hub.mode=subscribe&hub.chamble=1409653872&hub.verify_token=myToken

然后我有下面的快递功能来处理上的传入请求

static async appInstallOnGroupHookHandler(req, res) {
let hubChallenge = req.query["hub.challenge"]; // This is always undefined
console.log(`Hub Challenge ${hubChallenge}`);
let verificationToken = req.query["hub.verify_token"];
console.log(`Hub Verification Token=${verificationToken}`);
return res.status(200).send(hubChallenge ?? 'success');
}

当我尝试使用访问hub.challenge查询参数时

let hubChallenge = req.query["hub.challenge"]; 

CCD_ 2继续作为CCD_ 3返回。

是否有更好的方法来访问包含字符的查询参数?

感谢

在我的例子中,我使用express-mongo-sanitize中间件来删除""以及"$"来自请求,因此还有req.query["hub.challenge"]-为了解决我的问题,我刚刚将标志allowDots添加到中间件-

app.use(mongoSanitize({ allowDots: true }));

最新更新