Изолујте прокси захтев PowerShell 5.1 помоћу Start-Job
Користите обичан позадински посао да изолујете веб захтев Windows PowerShell 5.1 од ранијих мрежних промена у процесу.
У сесији Windows PowerShell 5.1, ранија компонента може променити .NET мрежно стање унутар процеса. Обичан позадински посао Start-Job даје одвојен PowerShell процес за каснију веб операцију.
$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 и proxyUri су вредности које даје апликација. За јавни HTTP тест, листа HTTP проксија нуди кандидатне посредничке адресе; држите изабрану крајњу тачку стабилном када поредите процесе. Проследите и потребне прокси акредитиве кроз предвиђене улазе посла и параметре захтева. Живи објекат веб сесије из родитеља се не користи поново аутоматски.
Посао има сопствено стање сесије; учитајте потребне функције или модуле тамо. Његов излаз прелази границу процеса, па је намерно враћање садржаја једноставније од претпоставке да се десеријализовани одговор понаша као оригинални живи објекат.
Start-ThreadJob користи други модел извршавања и не пружа исту изолацију процеса. Одвојен процес такође не поправља неважећу прокси крајњу тачку ни мрежну политику. Користите ову границу када је дељено стање процеса релевантна разлика.