如何在不使用服务器端缓存的情况下调用 cURL?

新手上路,请多包涵

有没有办法告诉 cURL 命令不要使用服务器端缓存?例如;我有这个 curl 命令:

curl -v www.example.com

如何让 curl 发送一个不使用缓存的新请求?

注意:我正在终端中寻找可执行命令。

原文由 tokhi 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.8k
2 个回答

我知道这是一个较老的问题,但我想为有相同问题的用户发布答案:

 curl -H 'Cache-Control: no-cache' http://www.example.com

此 curl 命令服务器在其标头请求中从 Web 服务器返回非缓存数据。

原文由 stoicbaby 发布,翻译遵循 CC BY-SA 3.0 许可协议

-H 'Cache-Control: no-cache' 参数不能保证工作,因为远程服务器或中间的任何代理层可以忽略它。如果它不起作用,您可以通过添加唯一的查询字符串参数来使用老式方法。通常,服务器/代理会认为它是唯一的 URL,而不使用缓存。

 curl "http://www.example.com?foo123"

但是,您每次都必须使用不同的查询字符串值。否则,服务器/代理将再次匹配缓存。要每次自动生成不同的查询字符串参数,您可以使用 date +%s ,它将返回自纪元以来的秒数。

 curl "http://www.example.com?$(date +%s)"

原文由 wisbucky 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题