C# でHttpClient /WebRequest APIを使用して REST API クライアントを構築します。基になるRequestCachePolicyを変更して、適切な HTTP キャッシュ コントロール ヘッダーを持つ応答をキャッシュできるようにしました。これはうまく機能しています。
ただし、テスト中にキャッシュをクリアしたいことがよくあります。私が読んだことはすべてそう言っています
- 基礎となる実装はWinInetキャッシュです。
- Internet Explorer でクリアできます。
- Win7 では、キャッシュは C:\Users\namehere\AppData\Local\Microsoft\Windows\Temporary Internet Files に保存されます
コードが中間層のシナリオでIIS にデプロイされ、そこから HTTP クライアントが実行されていることがわかりました。
- 基礎となる実装は依然として WinInet キャッシュです。
- Internet Explorerはそれをクリアしません。
- C:\Windows\Temp\Temporary Internet Files\Content.IE5\ に保存されます。
System.Net トレースを使用して、クライアント側のキャッシュの動作を監視できました。
私の質問は、この Content.IE5 キャッシュを非プログラム的な方法でクリアする方法です。確かに、手動でファイルを削除することはできますが、Content.IE5 などの下にあるすべての英数字フォルダーを扱うのは面倒です。