如何使Invoke-RestMethod使用默认Web代理?

 _____畫情 发布于 2023-02-12 03:50

以下在我的机器上工作正常,不使用Web代理.

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文件定义的公司代理.我已经确认我可以$server$url从Internet Explorer 获取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对象.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有