我正在使用此代码使用ASP.NET AWS SDK使CloudFront文件无效。
public bool InvalidateFiles(string[] arrayofpaths)
{
try
{
var client = AWSClientFactory.CreateAmazonCloudFrontClient(MY_AWS_ACCESS_KEY_ID, MY_AWS_SECRET_KEY);
CreateInvalidationResponse r = client.CreateInvalidation(new CreateInvalidationRequest
{
DistributionId = ConfigurationManager.AppSettings["DistributionId"],
InvalidationBatch = new InvalidationBatch
{
Paths = new Paths
{
Quantity = arrayofpaths.Length,
Items = arrayofpaths.ToList()
},
CallerReference = DateTime.Now.Ticks.ToString()
}
});
}
catch
{
return false;
}
return true;
}
我提供了类似“/images/1.jpg”的路径,但似乎没有发生失效。我等了半小时,用硬刷新并清除了缓存,图像是一样的。我已将图像更改为不同,因此如果发生无效,我可以注意到区别。
在控制台中,我看到失效发生了,因为我有ID,并且状态我看到'已完成',但同样,图像中没有任何变化。
我的问题是如何检查失效发生并使其有效,似乎我遗漏了一些东西。
此外,是否存在创建异步的选项,因此我不需要从亚马逊回答。
感谢。