Почему я получаю неверный запрос HTTP 400, хотя скрипт работает на другом компьютере - PullRequest
0 голосов
/ 02 мая 2019

У меня есть несколько серверов / машин.один из серверов, которые я использую для разработки.

Я пытаюсь запустить простой скрипт powershell, который извлекает некоторые значения из хранилища https://www.hashicorp.com/products/vault/

Function getValues($token) {
    $headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
    $headers.Add("X-Vault-Token", $token)
    $response = Invoke-RestMethod  -method GET -uri "https://vault.com:8243/v1/secret/vault/development" -ContentType 'application/json' -headers $headers
    $response.data| ConvertTo-Json  -depth 100
}
getValues $token

Я получаю эту ошибку:

Invoke-RestMethod :
Bad Request

Bad Request - Invalid URL
HTTP Error 400. The request URL is invalid.
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc
   eption
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

ОднакоКогда я запускаю сценарий локально (мой компьютер) или с другого сервера / компьютера, я получаю ответ и значения просто отлично.

Есть ли причина, по которой он работает на одной, а не на этой машине?все серверы имеют одинаковую настройку (Windows 2016)

Параметры прокси на компьютере, который работает, и компьютере, который не работает, одинаковы:

proxy

1 Ответ

0 голосов
/ 07 июня 2019

Оказывается, после запуска netmon trace команда REST пыталась вызвать URL через прокси.

Прокси-сервер на этом нерабочем сервере установлен в профиле powershell, который был создан давно. Закомментировав это / удалив эти строки прокси, остальные вызовы смогли отправить ответ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...