KAR*_*ván 9 browser post caching http cross-browser
我想为POST请求创建一个可缓存的HTTP响应.
我的实际实现响应POST请求的以下内容:
HTTP/1.1 201 Created
Expires: Sat, 03 Oct 2020 15:33:00 GMT
Cache-Control: private,max-age=315360000,no-transform
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 9
ETag: 2120507660800737950
Last-Modified: Wed, 06 Oct 2010 15:33:00 GMT
.........
Run Code Online (Sandbox Code Playgroud)
但看起来浏览器(Safari,Firefox测试)并没有缓存响应.
在HTTP RFC中,相应的部分说:
除非响应包含适当的Cache-Control或Expires头字段,否则对此方法的响应不可缓存.但是,303(请参阅其他)响应可用于指示用户代理检索可缓存资源.
所以我认为它应该被缓存.我知道我可以设置一个会话变量并设置一个cookie并进行303重定向,但我想缓存POST请求的响应.
有没有办法做到这一点?
PS:我从简单开始200 OK,所以它不起作用.
谢谢,
小智 3
我还要指出的是,缓存始终是可选的(HTTP/1.1 RFC 中可以选择)。由于在大多数情况下,成功的 POST会使缓存条目无效,因此您正在查看的浏览器缓存可能只是没有实现缓存 POST 响应(因为这种情况非常罕见 - 通常这是通过格式化来完成的)事情作为 GET,听起来你已经完成了)。
| 归档时间: |
|
| 查看次数: |
5298 次 |
| 最近记录: |