AWSの画像のキャッシュを消す方法
C#でawsに画像を保存したり削除したりしてると
エッジキャッシュというawsが持っておいてくれるキャッシュが原因ですぐに反映されない時がある。
しかしそれでは困ることもあるので
今回はこのエッジキャッシュの設定をC#でいじってキャッシュを持たせないようにする
string temp_path = "キャッシュを消したい画像のURL(バケットより後ろ全部)" List<string> cloudFrontInvalidationPath = new List<string>() { temp_path}; using (var oClient = new Amazon.CloudFront.AmazonCloudFrontClient("アクセスキー", "シークレットキー", "リージョンポイント")) { Amazon.CloudFront.Model.CreateInvalidationRequest oRequest = new Amazon.CloudFront.Model.CreateInvalidationRequest(); oRequest.DistributionId = "ディストリビューションID"; oRequest.InvalidationBatch = new Amazon.CloudFront.Model.InvalidationBatch { CallerReference = DateTime.Now.Ticks.ToString(), Paths = new Amazon.CloudFront.Model.Paths { Items = cloudFrontInvalidationPath, Quantity = cloudFrontInvalidationPath.Count } }; Amazon.CloudFront.Model.CreateInvalidationResponse oResponse = oClient.CreateInvalidation(oRequest); }