2016-12-21 12 views
0

Я пытаюсь вызвать URL-адрес программы программным образом, но я получаю 401 несанкционированную ошибку. Интересно, когда я вызываю servicenow webservice url в браузере Chrome с одним сеансом входа в систему, я могу успешно загрузить файл.Вызов URL-адреса Экспорт программно - возврат (401) Неавторизованный ответ

Вот мой сценарий powershell.


$WebClient=New-Object System.Net.WebClient 
$credCatch=New-Object System.Net.CredentialCache 
$urlServiceNow = "http://instancename.service-now.com/incident.do?csv" 

try { 
    $creds=New-Object System.Net.NetworkCredential($username,$password) 
    $credCatch.Add($urlServiceNow,"Basic",$creds) 
    $WebClient.Credentials = $credCache 
    $WebClient.DownloadFile($urlServiceNow,$FilePath) 

} 

catch [System.Net.WebException] 
    { # $_ is set to the ErrorRecord of the exception 
    if ($_.Exception.InnerException) 
    { 
     $_.Exception.InnerException.Message } 
    else { 
     $_.Exception.Message 

    } 
    } 
+1

Используется ли учетная запись, разрешенная для использования Basic Auth? – ansario

ответ

0

Похоже, вы есть опечатка в переменной наименовании. Кредитная информация устанавливается в переменной $ credCatch, но веб-клиент ссылается на переменную $ credCache.