【发布时间】:2013-12-09 13:10:08
【问题描述】:
以下在我不使用网络代理的机器上运行良好。
return Invoke-RestMethod
-Uri $server$url
-ContentType $contentType
-Headers $headers
-Method $method
-UseDefaultCredentials
注意:$server$url 是一个 https 地址,类似于 https://somewhere.example.com/api/data
现在我正试图让它在公司环境中工作,但我收到 401 错误。
我认为这是因为有一个用 proxy.pac 文件定义的公司代理。我已经确认我可以从 Internet Explorer 访问 $server$url URI。我需要做什么才能让Invoke-RestMethod 命令使用相同的设置工作?
我已尝试添加-proxy 参数
$proxy = [System.Net.WebRequest]::GetSystemWebProxy()
$proxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
return Invoke-RestMethod
-Uri $server$url
-ContentType $contentType
-Headers $headers
-Method $method
-UseDefaultCredentials
-Proxy $proxy
-ProxyUseDefaultCredentials
但 -Proxy 参数需要一个 URI 而不是 IWebProxy 对象。
【问题讨论】:
标签: rest powershell