我如何使用 Powershell 执行 Invoke-WebRequest 或类似操作,以便使用 NTLM 身份验证,同时还为帖子提供正文。
下面的代码示例是我使用调用 Web 请求并将响应输出到 .json 文件的示例帖子。示例中未包含用户名和密码变量。
$myURL = https://example.blah.etc
$params = @" {""EXAMPLE1":"STUFF"} "@
$Headers = @{ Authorization = "Basic {0}" -f [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $Username,$Password))) }
Invoke-WebRequest -Uri $myURL -Headers $Headers -Method POST -ContentType "application/json" -Body $params | Select-Object -ExpandProperty Content > "C:\output.json"
使用 -UseDefaultCredentials 仅适用于获取,不适用于帖子。
远程服务器返回错误:(401) Unauthorized
只需使用
-UseDefaultCredentials
.
尝试操纵 NTLM 的标头是一项艰巨的工作。这是一种痛苦的挑战反应。让 PS 完成工作...