在我们的应用程序中,我们曾经在Azure文件存储中上传HTML文档。 它一直成功进行到[14-May-2019]。现在,我们间歇性地收到404错误。错误显示
WebException: The remote server returned an error: (404) Not Found.
at Microsoft.WindowsAzure.Storage.Shared.Protocol.HttpResponseParsers.ProcessExpectedStatusCodeNoException[T](HttpStatusCode expectedStatusCode, HttpStatusCode actualStatusCode, T retVal, StorageCommandBase`1 cmd, Exception ex) in c:\Program Files (x86)\Jenkins\workspace\dotnet-nov17\Lib\Common\Shared\Protocol\HttpResponseParsers.Common.cs:line 50
at Microsoft.WindowsAzure.Storage.File.CloudFile.<PutRangeImpl>b__53(RESTCommand`1 cmd, HttpWebResponse resp, Exception ex, OperationContext ctx) in c:\Program Files (x86)\Jenkins\workspace\dotnet-nov17\Lib\ClassLibraryCommon\File\CloudFile.cs:line 4820
at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.EndGetResponse[T](IAsyncResult getResponseResult) in c:\Program Files (x86)\Jenkins\workspace\dotnet-nov17\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:line 299
重试后,文件将成功上传。
我们正在使用的Azure存储库是9.2.0.0版。
以下代码用于上传文件。
任何可能触发此问题的想法都会有所帮助
var file = await GetCloudFile(fileId);
await file.UploadFromStreamAsync(stream);
答案 0 :(得分:0)
目前max size of a block blob约为。 4.75 TB,将MB大小的数据存储在块Blob中,当您访问Blob时,这不应导致Azure Blob服务返回404。 404错误表示指定的Blob不存在,Blob名称区分大小写,请确保您提供的文件名(blob name)确实存在于您的容器中(还应区分大小写,例如jpeg,JPG等文件扩展名)< / p>
有关明确的故障排除方法,请参见RequestInformation
内的Microsoft.WindowsAzure.Storage.StorageException
,有关详细信息,该方法是从Upload [xxx] Async方法抛出的。
希望有帮助。