dotnet 6.0 HttpClientでCache-Control: no-cache

Pocket

dotnet 6.0の、 HttpClientで「Cache-Control: no-cache」を使う方法

HttpClientの DefaultRequestHeaders.CacheControlを 使います。

using System.Net.Http.Headers;

string url = "https://mjeld.com";
var httpc = new HttpClient();
httpc.DefaultRequestHeaders.CacheControl = new CacheControlHeaderValue {
    NoCache = true, NoStore = true, MaxAge = new TimeSpan(0,0,30)
};
var aRes = httpc.GetAsync(url);
var bRes = aRes.Result.Content.ReadAsStringAsync();
string content1 = bRes.Result;
Console.WriteLine(content1);

Cache-Control: no-store, no-cache, max-age=30

上記の結果でした。

no-cacheだけ必要な場合は、 下記のように NoStoreとMaxAgeを外します。

httpc.DefaultRequestHeaders.CacheControl = new CacheControlHeaderValue {
    NoCache = true
};

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA


2022 MJELD TECHNOLOGIES. ALL RIGHTS RESERVED