Sejak PowerShell 3.0, PSDefaultParameterValues dapat menyediakan default proxy untuk panggilan web berulang:

$PSDefaultParameterValues['Invoke-WebRequest:Proxy'] = 'http://proxy.example:8080'
$PSDefaultParameterValues['Invoke-RestMethod:Proxy'] = 'http://proxy.example:8080'

Penetapan ini mempertahankan default lain yang tidak terkait dalam kamus. Parameter Proxy eksplisit menimpa default yang sesuai. Pertahankan kunci khusus perintah alih-alih mencocokkan setiap parameter bernama serupa dengan wildcard. Untuk sesi situs publik terpisah yang mengizinkan perantara publik, pilih kandidat dari daftar proxy HTTP hanya bila tidak ada default ProxyCredential atau ProxyUseDefaultCredentials dan tidak ada kredensial proxy eksplisit yang ditetapkan.

Jika proxy menggunakan identitas Windows saat ini, tambahkan default yang sesuai:

$PSDefaultParameterValues['Invoke-WebRequest:ProxyUseDefaultCredentials'] = $true
$PSDefaultParameterValues['Invoke-RestMethod:ProxyUseDefaultCredentials'] = $true

Tempatkan entri yang dipilih di profile yang sesuai bila sesi interaktif mendatang harus menerimanya. Untuk jaringan lain, ganti nilainya atau hapus entri milik penyiapan ini:

$PSDefaultParameterValues.Remove('Invoke-WebRequest:Proxy')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:Proxy')
$PSDefaultParameterValues.Remove('Invoke-WebRequest:ProxyUseDefaultCredentials')
$PSDefaultParameterValues.Remove('Invoke-RestMethod:ProxyUseDefaultCredentials')

Penghapusan memulihkan pemilihan parameter biasa. Cmdlet masih dapat menggunakan konfigurasi sistem atau lingkungan yang didukungnya; menghapus default tidak secara eksplisit meminta koneksi langsung.

Artikel terkait