如何设置与Twilio和节点HTTP Cookie?
我正在尝试使用cookie来跟踪与我的节点应用程序的短信交谈,但他们似乎从来没有得到正确的设置。 至less,当我在用户的下一个文本中检索它们时,它们仍然是空的。
我有这个函数设置一个cookie并发送一个响应给用户:
function requestLocation (res, resend) { var locationXml = ""; ... var responseText = ""; ... var response = new twilio.TwimlResponse(); response.sms(responseText); res.cookie('rideStage', rideStages.SENT_REQUEST); res.send(response.toString(), { 'Content-Type':'text/xml' }, 200); }
但是,当我收到来自该用户的下一条消息时,“request.cookies.rideStage”始终为空。 我也试过replace
res.cookie('rideStage', rideStages.SENT_REQUEST); res.send(response.toString(), { 'Content-Type':'text/xml' }, 200);
同
res.send(response.toString(), { 'Set-Cookie':'rideStage='+rideStages.SENT_REQUEST, 'Content-Type':'text/xml' }, 200);
但是request.cookies.rideStage仍然是空的。
对于任何人看到这个,我上面发布的其实是正确的。
通过做:res.cookie('cookieName',cookieVal);
然后你可以使用:req.cookies.cookieName
得到cookieVal。 它不是为我工作的原因是因为我只是在本地testing我的应用程序,并在terminal中模拟curl的文本,从整个过程(哎呀)完全排除Twilio和cookie处理。
为了好奇,我们还收到了一篇关于使用Cookie跟踪短信会话的博客文章 。
如果你想在Node中尝试一下,可以开始使用帮助程序库,但是不要忘记使用类似ngrok的东西来允许Twilio查看你的应用程序。
- `npm link –save`不会更新我的package.json的依赖关系
- FacebookGraphAPIError:(#100)尝试访问节点types(用户)上的不存在字段(user_photos)