Från och med PowerShell 3.0 kan PSDefaultParameterValues tillhandahålla proxystandardvärden för upprepade webbanrop:

$PSDefaultParameterValues['Invoke-WebRequest:Proxy'] = 'http://proxy.example:8080'
$PSDefaultParameterValues['Invoke-RestMethod:Proxy'] = 'http://proxy.example:8080'

Dessa tilldelningar behåller orelaterade standardvärden i ordboken. En explicit Proxy-parameter åsidosätter motsvarande standardvärde. Håll nycklarna kommandospecifika i stället för att matcha alla liknämnda parametrar med en wildcard. För en separat session på en offentlig webbplats där offentliga mellanhänder tillåts, välj bara en kandidat från HTTP-proxylistan när inga standardvärden för ProxyCredential eller ProxyUseDefaultCredentials och inga explicita proxyuppgifter är angivna.

Om proxyn använder den aktuella Windows-identiteten, lägg till motsvarande standardvärden:

$PSDefaultParameterValues['Invoke-WebRequest:ProxyUseDefaultCredentials'] = $true
$PSDefaultParameterValues['Invoke-RestMethod:ProxyUseDefaultCredentials'] = $true

Placera de valda posterna i rätt profile när framtida interaktiva sessioner ska få dem. För ett annat nätverk ersätter du deras värden eller tar bort posterna som den här konfigurationen äger:

$PSDefaultParameterValues.Remove('Invoke-WebRequest:Proxy')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:Proxy')
$PSDefaultParameterValues.Remove('Invoke-WebRequest:ProxyUseDefaultCredentials')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:ProxyUseDefaultCredentials')

Borttagning återställer vanligt parameterval. Cmdleten kan fortfarande använda sin stödda system- eller miljökonfiguration; att ta bort ett standardvärde begär inte uttryckligen en direkt anslutning.

Relaterade artiklar