使用会话数据跳过CloudFront缓存以获取请求

时间:2017-05-15 11:20:59

标签: node.js express caching amazon-cloudfront

我在EC2上运行NodeJS应用程序(通过Passenger)。我有一个指向应用程序的AWS CloudFront分配。

我正在使用express-session为应用记录购物篮。我将CloudFront配置为将会话cookie列入白名单,但是对购物篮页面的请求将被缓存,而不会路由到源。当我向我的购物篮中添加一个项目时,它似乎有效(例如,它会增加会话存储中的计数器),但是当重新加载页面时,请求永远不会触及原始服务器,所以我看不到篮子。 / p>

我不确定如何处理这个问题:我已将CloudFront设置为传递我的Cookie,但只有在我第一次将项目添加到我的购物篮时才提供set-cookie标题(例如,这是CloudFront改变缓存的方式。)

我不想简单地在每个会话请求上保存一个cookie,因为这会有效地杀死我的缓存。处理这种情况的最佳方法是什么?基本上,如果有会话数据,我需要这个购物篮页面跳过缓存。我只是检查req.session并返回no-cache标题吗?或者有更好的方法吗?

0 个答案:

没有答案