PowerShell: ошибка New-WebServiceProxy
Я пишу сценарий, который просматривает список машин и возвращает различные сведения об этой машине. Одна из вещей, которые я возвращаю, - это метка обслуживания Dell, извлеченная из WMI. Затем я использую метку службы и создаю New-WebServiceProxy
возражать против предоставления различной информации о гарантии от Dell. Сначала скрипт будет работать нормально, но через некоторое время, когда я отправлю запрос в Dell, он начнет выдавать следующую ошибку:
New-WebServiceProxy : The request failed with HTTP status 401: Authorization Required.
At C:\..\..\..\ServerInfo.ps1:68 char:15
+ $service = New-WebServiceProxy -Uri http://xserv.dell.com/services/assetservi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (http://xserv.de...rvice.asmx?WSDL:Uri) [New-WebServiceProxy], WebExcept
ion
+ FullyQualifiedErrorId : WebException,Microsoft.PowerShell.Commands.NewWebServiceProxy
То, что я не могу понять это, почему эта ошибка происходит. Я провел некоторое исследование и обнаружил, что люди, которые обычно сталкиваются с этой ошибкой, не входят в веб-службу, к которой они обращаются. Этот веб-сервис не требует какой-либо аутентификации! Почему он так долго работает нормально, а потом выдает ошибку? Я пытался ограничить количество звонков, которые я делаю, как если бы я отправлял много запросов, но даже ожидание двух минут между каждым звонком все равно в конечном итоге приводило к ошибкам.
Вот блок кода, который вызывает эту ошибку:
$ STAG = "XXXXXXX" #ServiceTag $ WebProxy = New-WebServiceProxy -Uri http://xserv.dell.com/services/assetservice.asmx?WSDL $ GUID = [guid]:: NewGuid () $ Return = $ WebProxy.GetAssetInformation ($ GUID, 'CheckWarranty', $ STAG) $ Return [0].Entitlements [0].ServiceLevelDescription.ToString ()
Итак, я спрашиваю: почему эта ошибка выводится после стольких запросов? Аутентификация не требуется, так почему мне говорят, что она требует аутентификации?