2016-08-08 2 views
0

Я пишу очень простой скрипт powershell для отправки строки json на сервер. У меня странная проблема при выполнении скрипта.Powershell Invoke-RestMethod «Не удается подключиться к удаленному серверу»

  1. Сервер находится внутри нашей интрасети, брандмауэр отключен для всего сервера интрасети.

  2. Я попытался запустить скрипт в разных местах:

    • окно Powershell в моем собственном компьютере (Windows 7, powershel 5)
    • Powershell ISE в моем компьютере
    • начало Powershell. exe в командной строке на моем собственном компьютере
    • start powershell.exe в приложении командной строки третьей стороны на моем собственном компьютере

    • Powershell окно в CITRIX seesion (окна 10, powershel 5)

    • запуска powershell.exe в командной строке в CITRIX seesion

Я проверил все 6 мест есть ExecutionPolicy «RemoteSigned»,

Но, я могу только успешно выполнить скрипт в последних 3-х местах,

В первой 3-е место, я получаю ошибку

Invoke-RestMethod: Не удается подключиться к удаленному серверу В F: \ Temp \ Test.ps1: 46 полукокса: 9 + $ соответственно = Invoke-RestMethod -Method POST -Body $ result ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified: (:) [Invoke-RestMethod], WebException + FullyQualifiedErrorId: System.Net.WebException, Microsoft .PowerShell.Com mands.InvokeRestMethodCommand

Кроме того, я также попытался Invoke-WebRequest, я получил то же самое e rror сообщение.

Любая идея, почему это происходит? Что мне с этим делать?

+0

, в котором установлена ​​версия powershell на удаленном сервере? –

+0

Пожалуйста, отредактируйте ваш код или [mcve] в свой вопрос. – briantist

+0

На удаленном сервере есть версия 4 (win server 2012r2) – Jim

ответ

1

У меня была аналогичная проблема несколько дней назад, и я решил ее, применив настройки прокси-сервера в вызове «Invoke-WebRequest».

Нечто подобное;

Invoke-WebRequest -URI $url -Proxy 'http://10.10.7.11:80' -ProxyCredential $creds 
0

я решил такую ​​же проблему, отключив/закомментировать параметры прокси-сервера в файле machine.config, который я позволил перехватить сетевые вызовы из моего приложения .Net в Fiddler.

Обратите внимание: вам необходимо перезагрузить компьютер после внесения изменений в файл machine.config. Кроме того, убедитесь, что вы запустили редактор в качестве администратора для редактирования файла конфигурации.

Путь:

C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config \ machine.config

Элемент конфигурации:

Конфигурация -> system.net -> defaultProxy

Смежные вопросы