Powershell Invoke-WebRequest [Произошла ошибка при обработке запроса] - PullRequest
1 голос
/ 13 марта 2019

Я работаю над проектом по автоматизации создания пользователей AD, созданию папок в разных отделах / разделах для пользователей, а также автоматически отправляю пароль, когда пользователь AD создается на их мобильные телефоны и пакет запуска в почте компании пользователя.

У меня проблема с этим в PowerShell, это прекрасно работает в Python (мой основной язык).Я получаю эту странную ошибку при попытке обработать мой запрос в powershell.

Код:

$url = "hiding_this_for_obvious_reasons" # Request URL

$nummer = Read-Host("Skriv inn mobil nummer: ")
$tekst = Read-Host("Skriv inn melding: ")

#Request Payload information
$JSON = @'
{
            "content": "$tekst",
            "senderNumber": "SSB",
            "targetNumbersAsDelimitedString": "47$nummer",
            "sendDate": null,
            "status": {"id": "5"},
            "numberOfTargetNumbers": null,
            "numberOfInvalidNumbers": ""
}
'@

Invoke-WebRequest -Uri $url -Method Post -Body $JSON -ContentType "application/json"

Сообщение об ошибке выглядит следующим образом:

Invoke-WebRequest : Error happened while processing request 
At H:\Scripts\Powershell Scripts\ClearAD\SendSMSPowershell.ps1:19 char:1
+ Invoke-WebRequest -Uri $url -Method Post -Body $JSON -ContentType "ap ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExce 
   ption
    + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

1 Ответ

0 голосов
/ 13 марта 2019

Похоже, вы пытаетесь использовать переменные, но внутри одинарных кавычек.Это должны быть двойные кавычки для переменных, которые будут расширены.

Попробуйте это:

$JSON = @"
{
            "content": "$tekst",
            "senderNumber": "SSB",
            "targetNumbersAsDelimitedString": "47$nummer",
            "sendDate": null,
            "status": {"id": "5"},
            "numberOfTargetNumbers": null,
            "numberOfInvalidNumbers": ""
}
"@
...