复制Invoke-WebRequest以涵盖代理与无代理的情况
我有一个需要使用代理或不使用代理的脚本。当前,在我调用Invoke-WebRequest的任何地方,我必须有两行代码。如果指定了代理,则呼叫一行,如果未指定代理,则呼叫另一行。我希望能够在任何地方使用一个呼叫,并且只要指定了代理,就可以将代理内容附加到该呼叫上。
if ($Proxy) {
Invoke-WebRequest -Uri $url -OutFile $tv_download -Proxy $Proxy -ProxyUseDefaultCredentials
}
else {
Invoke-WebRequest -Uri $url -OutFile $tv_download
}
编辑,我确实找到了一种方法来执行此操作,但是如果您有其他方法,请告诉我。首先,在脚本开头定义一次$ proxyInfo。
if($Proxy) {$proxyInfo = @{ Proxy = $Proxy; ProxyUseDefaultCredentials = $true} } else {$proxyInfo = @{}}
随后,使用以下一行代码在整个脚本中调用Invoke-WebRequest:
Invoke-WebRequest -Uri $url -OutFile $tv_download @proxyInfo