2017-05-08 50 views
7

在我的应用程序中,我设置了一个cookie,然后致电fetch('/foo', {credentials: 'same-origin'})。这在服务工作者中被截获,其使用caches来缓存请求和响应。响应已设置Vary: Cookie。然后,我更改cookie并如上所述再次呼叫fetch。但是当我在服务人员中拨打caches.match时,旧请求匹配!这是为什么发生?我可以修复它吗?为什么不改变:Cookie在服务工作者中工作?

+0

我不认为服务人员还有这种功能。但是当你再次进行提取时,你仍然可以用新的响应来更新请求。我不明白为什么它不起作用。是否可以粘贴片段的一部分? – karthick

回答

3

我不能评论(低代表),所以我张贴在这里。

服务人员不能拦截cookie。有一个建议new api in development
您为什么不尝试根据Cookie的内容为您的请求设置自定义标头。

请求1:
X-Cookie的值:1
因人而异:X-Cookie的值

请求2:
X-Cookie的值:2
因人而异:X-Cookie的值

+0

这看起来不错。我会在下周一看看。 – Dan

相关问题