PowerShell - Slack API - История помещения - Метод публикации с параметрами x-www-form-urlencoded - PullRequest
0 голосов
/ 22 апреля 2019

Я хочу передать несколько параметров тела, используя формат x-www-form-urlencoded, используя powershell invoke-restmethod. Не то чтобы это нормально работало в PostMan. Мой код для этого ниже, но не работает. Как мне сделать это в powershell?

$param = [System.Web.HttpUtility]::UrlEncode("channel:channelID
Content-Type:application/x-www-form-urlencoded
limit:50")


$uri="https://MySlackWebsite.com/api/channels.history"

$test2 = Invoke-RestMethod -Method POST -Uri $uri -Headers $headerJson -Body $param

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

Я получил это для работы со следующими, используя руководство, которое я получил от @Erik Kalkoken.

$headerJson = @{Authorization="Bearer xoxp-xyz"}
$postParams = @{channel='roomID';limit=50}
$uri="https://slackserver.com/api/channels.history"

Invoke-RestMethod -Method POST -Uri $uri -Headers $headerJson -Body $postParams -ContentType "application/x-www-form-urlencoded"
0 голосов
/ 23 апреля 2019

Вот пример сценария получения списка сообщений из канала с помощью запроса POST.

$postParams = @{token='xoxp-XXX';channel='C12345678'}
$test2 = Invoke-WebRequest -Uri https://slack.com/api/channels.history -Method POST -Body $postParams
Write-Host $test2

Он протестирован и основан на этом ответе о том, как создать POST-запрос с помощью PowerShell.

...