与PowerShell版本2中的Invoke-WebRequest函数相同。这是我尝试使用我的函数,因为我无法升级到PowerShell 4,因为我正在使用Windows Server 2003。
Invoke-WebRequest $uri -Body ($baseMessage | ConvertTo-Json -Compress) -Method Post -ContentType "application/json"
谢谢
答案 0 :(得分:3)
$Web = New-Object System.Net.WebClient
$Web.OpenRead($url)
$PageContents = New-Object System.IO.StreamReader($Web)
$PageContents.ReadToEnd()
如果您要提交JSON数据,可以使用此代码:
$Encoding = [System.Text.Encoding]::GetEncoding("ASCII")
$postArray = $Encoding.GetBytes($json)
$Web = [System.Net.WebRequest]::Create($url)
$Web.Method = "POST"
$Web.Timeout = 10000;
$Stream = $Web.GetRequestStream()
$Stream.Write($postArray, 0, $postArray.Length)
$Web.GetResponse()
https://msdn.microsoft.com/en-us/library/System.Net.WebClient_methods(v=vs.80).aspx
在stackoverflow上找到另一个类似的问题:
答案 1 :(得分:1)
您可以在powershell v2中使用System.Net.Webrequest
.NET类。
从我的一个powershell答案中查看此示例: Powershell - View Website Source Information
并且回答这个显示如何设置json内容类型,尽管在C#中 How to get json response using system.net.webrequest in c#?