飘零雁 2022-12-21 17:39 采纳率: 33.3%
浏览 13
已结题

windows http 缓存

windows 的http缓存是通过Wininet实现的,包括httpwebrequest/httpclient,使用这两个接口下载时,都可以看到缓存的内容存储在
%userprofile%\AppData\Local\Microsoft\Windows\INetCache目录下。
但是当把程序放到windows RE(windows recovery environment) 或者说windows PE 上时,发现下载功能正常,但是没有缓存。
初步判断是, CreateUrlCacheEntry 接口无法在windows RE(windows recovery environment)工作。因为该接口在windows RE(windows recovery environment)返回 errorcode 12004(ERROR_INTERNET_INTERNAL_ERROR)。
希望哪位熟悉WRE环境或者 CreateUrlCacheEntry 接口的朋友可以分享一下,如何让在windows RE(windows recovery environment)让http 缓存正常工作。

  • 写回答

1条回答 默认 最新

  • 普通网友 2022-12-21 22:41
    关注

    由于在这些环境中可用的功能和组件集有限,缓存功能可能在 Windows 恢复环境 (WRE) 或 Windows 预安装环境 (Windows PE) 中不可用。

    您可以尝试的一种选择是使用文件或数据库实现您自己的缓存机制。您可以将下载的内容存储在文件或数据库中,并在发出新请求之前检查文件或记录是否存在。这样,您可以避免发出不必要的请求并减少网络负载。

    您也可以尝试使用外部缓存工具(例如缓存代理服务器)来缓存下载的内容。缓存代理服务器可以存储频繁请求的资源的副本,并从缓存中为客户端提供服务,减少源服务器的负载,提高系统的整体性能。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月5日
  • 已采纳回答 12月28日
  • 创建了问题 12月21日