讨论数量:
我又查了下资料,下图是我在dingo api 的配置文件 config/api.php 中相关截图
大致理解了该设置的用途:设置http 缓存:对比缓存。
经测试:
- 设置为 true 时,
'conditionalRequest' => env('API_CONDITIONAL_REQUEST', true)
http请求 响应截图
注意:cache-control 和 Etag - 设置为false 时
'conditionalRequest' => env('API_CONDITIONAL_REQUEST', false)
http 请求截图
注意cache-control 变化,并且缺少了Etag小结:
- 为 true 时,发起http 请求时,浏览器先检查缓存,缓存过期,则通过Etag ,查看服务器资源变化。服务器资源没变化,返回304,使用浏览器缓存; 服务器资源变化,返回200和响应资源。
- 为false 时,发起http 请求时,浏览器先检查缓存,缓存过期 , 因为缓存策略为no-cache,并且没有Etag,则直接请求资源,并返回200和响应资源。
我的建议
综上,我建议设为false ,因为我们返回的是json 数据,而不是图片,html, css 等静态资源,所以其实是没办法检查是否有更新的。(个人拙见,欢迎拍砖)
以上是我个人理解, 欢迎路过的朋友来和我讨论和指出我的不足
推荐文章: