PS3 而非 PS4 上的 Powershell Invoke-WebRequest 转换问题

Powershell Invoke-WebRequest casting issue on PS3 not PS4

我在我的 PS 脚本中 运行 以下命令:

$apiResult = Invoke-WebRequest -Uri $myURL -Body $body -DisableKeepAlive -Headers $headers -Method Post -TimeoutSec 120 -ContentType $contentType -UseBasicParsing

由于以下错误而失败:

Unable to cast object of type \u0027System.Management.Automation.PSObject\u0027 to type \u0027System.String\u0027

关键是:

我认为这是一个错误,但我无法在 google 或任何其他区域(包括文档)中找到任何提及它的地方。

好吧...经过长时间的挖掘,我发现问题是我的 headers 哈希表中的值之一不是字符串!不知道为什么这会在 powershell 4 上传递...也许那里的转换比 PS3

中的更灵活