Подтвердить что ты не робот

Веб-запрос Powershell без исключения исключения для 4xx/5xx

Я пишу powershell script, который должен сделать веб-запрос и проверить код состояния ответа.

Я пробовал написать это:

$client = new-object system.net.webclient

$response = $client.DownloadData($url)

а также:

$response = Invoke-WebRequest $url

но всякий раз, когда веб-страница имеет код состояния, который не является кодом статуса успеха, PowerShell идет вперед и генерирует исключение вместо предоставления мне фактического объекта ответа.

Как я могу получить код состояния страницы, даже если он не загружается?

4b9b3361

Ответ 1

Попробуйте следующее:

try { $response = Invoke-WebRequest http://localhost/foo } catch {
      $_.Exception.Response.StatusCode.Value__}

Это своего рода облом, который вызывает исключение, но так оно и есть.