3

我正在使用knox nodejs-library在我的webapp(nodejs)上生成已签名的URL。 然而,问题出现了,对于每个请求,我需要为当前用户重新生成唯一的GET签名url,从而将浏览器的缓存控制留在游戏之外。S3,签名URL和缓存

我搜索没有成功的网站为浏览器似乎使用完整的URL作为缓存键,所以我真的很好奇我怎么可以在特定情况下(的NodeJS,诺克斯库)获得问题解决,使用缓存控制同时仍然能够为每个请求生成已签名的URL,因为我需要验证用户的访问权限。

我不能相信有没有解决方案,但。

+0

一个建议:离开签署部分出来的URL,并添加自定义HTTP标头进行身份验证。 –

+0

我很好奇这可能在所有与诺克斯图书馆虽然 – anderswelt

回答

0

如果您将CloudFront与S3一起使用,则可以使用自定义策略,如果将每个网址限制为用户的IP并且超时时间相当长,则意味着当他们再次请求相同的内容时,它们将获得相同的URL因此他们的浏览器可以缓存内容,但该URL不适用于其他人(在不同的IP上)。

(参见:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-creating-signed-url-custom-policy.html

+0

这不会对我工作,因为用户可能会更改他们的IP相当频繁:( – anderswelt