PowerShell Invoke-RestMethod : contourner un proxy pour une requête
Utilisez NoProxy dans PowerShell 7 ou un proxy de session vide explicite dans Windows PowerShell 5.1.
Dans PowerShell 7, utilisez le commutateur explicite de la cmdlet web pour une requête qui doit passer directement :
Invoke-RestMethod -Uri 'https://example.com/' -NoProxy
NoProxy a été introduit dans PowerShell 6.0 et ne peut pas être combiné avec Proxy. Windows PowerShell 5.1 n'expose pas ce commutateur.
Pour une requête en 5.1, fournissez une session web avec un WebProxy vide :
$session = New-Object Microsoft.PowerShell.Commands.WebRequestSession
$session.Proxy = New-Object System.Net.WebProxy
Invoke-RestMethod -Uri 'https://example.com/' -WebSession $session
Le WebProxy sans paramètre n'a pas d'adresse de proxy et contourne les destinations. Conservez cette session pour les requêtes destinées à utiliser cette politique directe ; une autre session peut conserver un autre itinéraire.
Vérifiez la version du processus avec $PSVersionTable.PSVersion avant de choisir la forme. Ces exemples laissent les préférences de proxy du système d'exploitation inchangées.
Le routage direct exige toujours que la destination soit joignable depuis la machine. Dans un réseau où l'accès à Internet n'est autorisé que par l'intermédiaire de l'entreprise, le contourner peut correctement produire un échec de connexion.