Как обрабатывать исключения при Invoke-WebRequest для получения Http StatusCode?

При вызове
Invoke-WebRequest localhost
вернется нормальный response, в котором будет интересующий меня StatusCode.
StatusCode : 200
StatusDescription : OK

Но если же вызвать сайт который возвращает статус 401, в моем случае это сайт с Windows Authorisation, возникнет исключение, хотя для меня это нормально и я просто хочу узнать статус.
Invoke-WebRequest : ������ �������
401 - ������ ��������. ������������ ���������������� ������� ������.
��������������� ������� ������ �� ���� ����� �� �������� ����� �������� ��� ��������.
строка:1 знак:1
+ Invoke-WebRequest 192.168.3.5:10000
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

Как это правильно обработать, чтобы получить текущий статус 401.
  • Вопрос задан
  • 769 просмотров
Пригласить эксперта
Ответы на вопрос 1
@azarij
В меру опытный никто
после того, как получили ошибку она будет первой в $Error. найдите ее и запросите .exception или .exception.response:

($error | select -first 1).exception
($error | select -first 1).exception.response
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы