想象一下,我收到了以下带有查询参数的传入请求
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 }));