Ізаляваць проксі-запыт 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 выкарыстоўвае іншую мадэль выканання і не забяспечвае такую ж ізаляцыю працэсаў. Асобны працэс таксама не выпраўляе няправільны канчатковы пункт проксі ці сеткавую палітыку. Выкарыстоўвайце гэтую мяжу, калі агульны стан працэсу — істотная розніца.