Izoloni kërkesën proxy të PowerShell 5.1 me Start-Job
Përdorni një punë të zakonshme në sfond për të izoluar një kërkesë web të Windows PowerShell 5.1 nga ndryshimet e mëparshme të rrjetit në proces.
Në një sesion Windows PowerShell 5.1, një komponent i mëparshëm mund të ndryshojë gjendjen e rrjetit .NET lokale të procesit. Një punë e zakonshme në sfond Start-Job siguron një proces të veçantë PowerShell për një operacion web të mëvonshëm.
$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 dhe proxyUri janë vlera që jep aplikacioni. Për një test publik HTTP, lista e proxy-ve HTTP ofron adresa të ndërmjetme kandidate; mbajeni të qëndrueshëm pikën fundore të zgjedhur kur krahasoni proceset. Jepni gjithashtu kredencialet e proxy-t të nevojshme përmes hyrjeve të punës dhe parametrave të kërkesës. Një objekt sesioni web i gjallë nga prindi nuk ripërdoret automatikisht.
Puna ka gjendjen e vet të sesionit; ngarkoni atje funksionet ose modulet e nevojshme. Dalja e saj kalon një kufi procesi, prandaj kthimi i qëllimshëm i përmbajtjes është më i thjeshtë sesa supozimi se një përgjigje e deserializuar sillet si objekti origjinal i gjallë.
Start-ThreadJob përdor një model tjetër ekzekutimi dhe nuk ofron të njëjtin izolim procesi. Një proces i veçantë gjithashtu nuk rregullon një pikë fundore proxy të pavlefshme ose një politikë në nivel rrjeti. Përdoreni këtë kufi kur gjendja e përbashkët e procesit është diferenca përkatëse.