Izolacija proxy zahteve PowerShell 5.1 s Start-Job
Uporabite običajno opravilo v ozadju, da izolirate spletno zahtevo Windows PowerShell 5.1 od prejšnjih omrežnih sprememb v procesu.
V seji Windows PowerShell 5.1 lahko prejšnja komponenta spremeni lokalno stanje omrežja .NET v procesu. Običajno opravilo v ozadju Start-Job zagotovi ločen proces PowerShell za poznejšo spletno operacijo.
$job = Start-Job -ArgumentList $uri, $proxyUri -ScriptBlock {
param($destination, $intermediary)
$response = Invoke-WebRequest -Uri $destination `
-Proxy $intermediary -UseBasicParsing -TimeoutSec 30
$response.Content
}
try {
Receive-Job -Job $job -Wait -ErrorAction Stop
}
finally {
Remove-Job -Job $job
}
uri in proxyUri so vrednosti, ki jih zagotovi aplikacija. Za javni preizkus HTTP seznam proxyjev HTTP ponuja kandidatne vmesne naslove; pri primerjanju procesov ohranite izbrano končno točko nespremenjeno. Posredujte tudi morebitne potrebne poverilnice proxyja prek predvidenih vhodov opravila in parametrov zahteve. Živi objekt spletne seje iz nadrejenega procesa se ne uporabi znova samodejno.
Opravilo ima svoje stanje seje; tam naložite potrebne funkcije ali module. Njegov izhod prečka mejo procesa, zato je namerno vračanje vsebine preprostejše od domneve, da se deserializirani odgovor obnaša kot izvirni živi objekt.
Start-ThreadJob uporablja drug model izvajanja in ne zagotavlja enake izolacije procesov. Ločen proces prav tako ne popravi neveljavne končne točke proxyja ali omrežne politike. To mejo uporabite, ko je skupno stanje procesa pomembna razlika.