0
這是我的REST呼叫(PUT)用的powershell版本2(使用.NET類System.Net.HttpWebRequest)休息呼叫
呼叫具有正文,這是一個XML文件,我可以在PowerShell版本3及以上版本中使用帶有屬性「Body」的invoke-WebRequest進行工作。但是我必須使用.net類來做這件事,因爲我們有一些PowerShell版本2系統。
下面是我的代碼
$psuri = "$restUri"
[string]$psdata = Get-Content -path "$myfile.xml"
[System.Net.HttpWebRequest]$global:ps = [System.Net.HttpWebRequest] [System.Net.WebRequest]::Create("$psuri");
$psbuffer = [System.Text.Encoding]::UTF8.GetBytes($psdata)
$ps.ContentLength = $psdata.length
$ps.ContentType = "application/xml"
[System.IO.Stream]$outputStream = [System.IO.Stream]$ps.GetRequestStream()
$outputStream.Write($psdata, 0, $psbuffer.Length)
$ps.method = "PUT"
$ps.Accept = "application/xml"
$ps.AllowAutoRedirect = $false
$ps.KeepAlive = $true
$ps.CookieContainer = $CookieContainer
$ps.PreAuthenticate = $true
#Try
#{
[System.Net.HttpWebResponse]$psresponse = $ps.GetResponse()
同樣的失敗,出現錯誤異常調用「GetRequestStream」和「0」的說法(S):「無法發送內容體與這個動詞型」在線:8 char:9