Вежливо проверяя, существует ли файл перед загрузкой - PullRequest
1 голос
/ 11 мая 2011

Я пытаюсь загрузить файлы с помощью вызова Net.WebClient для DownloadFile

Using client As New Net.WebClient()   
  Try
    client.DownloadFile(PDFURL, FullPDFFilePath)

Затем я улавливаю исключение и проверяю сообщение на наличие ошибок 403, 404 или 500 (самый распространенный тип длясистема, в которую мы обращаемся.

 Catch ex as exception
   If exceptionMessage.Contains("(403)") Then 'Forbidden
     LogInformation("403 returned on download for " + CRPOrderNum, "DownloadLabels")

   ElseIf exceptionMessage.Contains("(404)") Then 'Not Found
     LogInformation("404 returned on download for " + CRPOrderNum, "DownloadLabels")

   else
     'blah blah
   end if
 finally
 end try

Есть ли вежливый способ попросить файл вместо вызова DownloadFile и обработки исключения?

Заранее спасибо.

1 Ответ

2 голосов
/ 11 мая 2011

"Вежливым" способом было бы отправить запрос HEAD.К сожалению, WebClient не поддерживает это изначально, поэтому вам придется либо свернуть свой собственный , либо использовать вместо него HttpWebRequest.

...