Invoke-WebRequest
Hiermee haalt u inhoud op van een webpagina op internet.
Syntax
Invoke-WebRequest
[-UseBasicParsing]
[-Uri] <Uri>
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-TimeoutSec <Int32>]
[-Headers <IDictionary>]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-RetryIntervalSec <Int32>]
[-Method <WebRequestMethod>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-ProxyUseDefaultCredentials]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[-PreserveAuthorizationOnRedirect]
[-SkipHeaderValidation]
[<CommonParameters>]
Invoke-WebRequest
[-UseBasicParsing]
[-Uri] <Uri>
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-TimeoutSec <Int32>]
[-Headers <IDictionary>]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-RetryIntervalSec <Int32>]
[-Method <WebRequestMethod>]
-NoProxy
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[-PreserveAuthorizationOnRedirect]
[-SkipHeaderValidation]
[<CommonParameters>]
Invoke-WebRequest
[-UseBasicParsing]
[-Uri] <Uri>
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-TimeoutSec <Int32>]
[-Headers <IDictionary>]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-RetryIntervalSec <Int32>]
-CustomMethod <String>
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-ProxyUseDefaultCredentials]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[-PreserveAuthorizationOnRedirect]
[-SkipHeaderValidation]
[<CommonParameters>]
Invoke-WebRequest
[-UseBasicParsing]
[-Uri] <Uri>
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-TimeoutSec <Int32>]
[-Headers <IDictionary>]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-RetryIntervalSec <Int32>]
-CustomMethod <String>
-NoProxy
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[-PreserveAuthorizationOnRedirect]
[-SkipHeaderValidation]
[<CommonParameters>]
Description
De Invoke-WebRequest
cmdlet verzendt HTTP- en HTTPS-aanvragen naar een webpagina of webservice. Het parseert het antwoord en retourneert verzamelingen van koppelingen, afbeeldingen en andere belangrijke HTML-elementen.
Deze cmdlet is geïntroduceerd in PowerShell 3.0.
Vanaf PowerShell 7.0 ondersteunt proxyconfiguratie die Invoke-WebRequest
is gedefinieerd door omgevingsvariabelen. Zie de sectie Notities van dit artikel.
Belangrijk
De voorbeelden in dit artikel verwijzen naar hosts in het contoso.com
domein. Dit is een fictief domein dat door Microsoft wordt gebruikt voor voorbeelden. De voorbeelden zijn ontworpen om te laten zien hoe u de cmdlets gebruikt.
Omdat de contoso.com
sites echter niet bestaan, werken de voorbeelden niet. Pas de voorbeelden aan hosts in uw omgeving aan.
Voorbeelden
Voorbeeld 1: een webaanvraag verzenden
In dit voorbeeld wordt de Invoke-WebRequest
cmdlet gebruikt om een webaanvraag naar de Bing.com site te verzenden.
$Response = Invoke-WebRequest -URI https://www.bing.com/search?q=how+many+feet+in+a+mile
$Response.InputFields | Where-Object {
$_.name -like "* Value*"
} | Select-Object Name, Value
name value
---- -----
From Value 1
To Value 5280
De eerste opdracht geeft de aanvraag uit en slaat het antwoord op in de $Response
variabele.
Met de tweede opdracht wordt een InputField ophaalt waarbij de eigenschap Name er ongeveer als volgt uitziet "* Value"
. De gefilterde resultaten worden doorgesluisd naar Select-Object
om de eigenschappen Naam en Waarde te selecteren.
Voorbeeld 2: Een stateful webservice gebruiken
In dit voorbeeld ziet u hoe u de Invoke-WebRequest
cmdlet gebruikt met een stateful webservice.
$LoginParameters = @{
Uri = 'https://www.contoso.com/login/'
SessionVariable = 'Session'
Method = 'POST'
Body = @{
User = 'jdoe'
Password = 'P@S$w0rd!'
}
}
$LoginResponse = Invoke-WebRequest @LoginParameters
$ProfileResponse = Invoke-WebRequest 'https://www.contoso.com/profile/' -WebSession $Session
Met de eerste aanroep naar Invoke-WebRequest
wordt een aanmeldingsaanvraag verzonden. De opdracht geeft een waarde van Session
op voor de waarde van de parameter SessionVariable . Wanneer de opdracht is voltooid, bevat de $LoginResponse
variabele een BasicHtmlWebResponseObject en de $Session
variabele een WebRequestSession
-object. Hiermee wordt de gebruiker aangemeld bij de site.
Met de tweede aanroep wordt Invoke-WebRequest
het profiel van de gebruiker opgehaald. Hiervoor moet de gebruiker zijn aangemeld bij de site. De sessiegegevens die zijn opgeslagen in de $Session
variabele, bieden sessiecookies aan de site die tijdens de aanmelding is gemaakt.
Voorbeeld 3: Koppelingen ophalen van een webpagina
In dit voorbeeld worden de koppelingen op een webpagina opgeslagen. De cmdlet wordt gebruikt Invoke-WebRequest
om de inhoud van de webpagina op te halen. Vervolgens wordt gebruikgemaakt van de eigenschap Koppelingen van de BasicHtmlWebResponseObject die Invoke-WebRequest
retourneert, en de eigenschap Href van elke koppeling.
(Invoke-WebRequest -Uri "https://aka.ms/pscore6-docs").Links.Href
Voorbeeld 4: Antwoordinhoud schrijven naar een bestand met behulp van de codering die is gedefinieerd op de aangevraagde pagina
In dit voorbeeld wordt de Invoke-WebRequest
cmdlet gebruikt om de webpagina-inhoud van een PowerShell-documentatiepagina op te halen.
$Response = Invoke-WebRequest -Uri "https://aka.ms/pscore6-docs"
$Stream = [System.IO.StreamWriter]::new('.\docspage.html', $false, $Response.Encoding)
try {
$Stream.Write($Response.Content)
} finally {
$Stream.Dispose()
}
Met de eerste opdracht wordt de pagina opgehaald en wordt het antwoordobject opgeslagen in de $Response
variabele.
Met de tweede opdracht maakt u een StreamWriter die moet worden gebruikt om de antwoordinhoud naar een bestand te schrijven. De eigenschap Encoding van het antwoordobject wordt gebruikt om de codering voor het bestand in te stellen.
Met de laatste paar opdrachten wordt de eigenschap Content naar het bestand geschreven en wordt de StreamWriter verwijderd.
Houd er rekening mee dat de eigenschap Encoding null is als de webaanvraag geen tekstinhoud retourneert.
Voorbeeld 5: een bestand met meerdere delen/formuliergegevens verzenden
In dit voorbeeld wordt de Invoke-WebRequest
cmdlet een bestand uploaden als een multipart/form-data
inzending. Het bestand c:\document.txt
wordt verzonden als het formulierveld document
met de Content-Type
van text/plain
.
$FilePath = 'c:\document.txt'
$FieldName = 'document'
$ContentType = 'text/plain'
$FileStream = [System.IO.FileStream]::new($filePath, [System.IO.FileMode]::Open)
$FileHeader = [System.Net.Http.Headers.ContentDispositionHeaderValue]::new('form-data')
$FileHeader.Name = $FieldName
$FileHeader.FileName = Split-Path -leaf $FilePath
$FileContent = [System.Net.Http.StreamContent]::new($FileStream)
$FileContent.Headers.ContentDisposition = $FileHeader
$FileContent.Headers.ContentType = [System.Net.Http.Headers.MediaTypeHeaderValue]::Parse($ContentType)
$MultipartContent = [System.Net.Http.MultipartFormDataContent]::new()
$MultipartContent.Add($FileContent)
$Response = Invoke-WebRequest -Body $MultipartContent -Method 'POST' -Uri 'https://api.contoso.com/upload'
Voorbeeld 6: Vereenvoudigde verzending van meerdelige/formuliergegevens
Voor sommige API's zijn indieningen vereist multipart/form-data
voor het uploaden van bestanden en gemengde inhoud. In dit voorbeeld ziet u hoe u een gebruikersprofiel bijwerkt.
$Uri = 'https://api.contoso.com/v2/profile'
$Form = @{
firstName = 'John'
lastName = 'Doe'
email = 'john.doe@contoso.com'
avatar = Get-Item -Path 'c:\Pictures\jdoe.png'
birthday = '1980-10-15'
hobbies = 'Hiking','Fishing','Jogging'
}
$Result = Invoke-WebRequest -Uri $Uri -Method Post -Form $Form
Voor het profielformulier zijn de volgende velden vereist: firstName
, lastName
, email
, avatar
, birthday
en hobbies
. De API verwacht een afbeelding voor de gebruikersprofielafbeelding die in het avatar
veld moet worden opgegeven. De API accepteert ook meerdere hobbies
vermeldingen die in hetzelfde formulier moeten worden ingediend.
Bij het maken van de $Form
HashTable worden de sleutelnamen gebruikt als formulierveldnamen. Standaard worden de waarden van de HashTable geconverteerd naar tekenreeksen. Als er een system.IO.FileInfo-waarde aanwezig is, wordt de inhoud van het bestand verzonden. Als er een verzameling zoals matrices of lijsten aanwezig is, wordt het formulierveld meerdere keren verzonden.
Met behulp van Get-Item
op de avatar
sleutel wordt het FileInfo
object ingesteld als de waarde. Het resultaat is dat de afbeeldingsgegevens voor jdoe.png
worden verzonden.
Door een lijst op te geven aan de hobbies
sleutel, is het hobbies
veld eenmaal aanwezig in de inzendingen voor elk lijstitem.
Voorbeeld 7: Berichten over niet-geslaagde berichten van Invoke-WebRequest
Wanneer Invoke-WebRequest
er een HTTP-bericht zonder succes (404, 500, enzovoort) wordt gevonden, wordt er geen uitvoer geretourneerd en wordt een afsluitfout gegenereerd. Als u de fout wilt ondervangen en de StatusCode wilt weergeven, kunt u de uitvoering insluiten in een try/catch
blok.
try
{
$Response = Invoke-WebRequest -Uri "www.microsoft.com/unkownhost"
# This will only execute if the Invoke-WebRequest is successful.
$StatusCode = $Response.StatusCode
} catch {
$StatusCode = $_.Exception.Response.StatusCode.value__
}
$StatusCode
404
De afsluitfout wordt ondervangen door het catch
blok, dat de StatusCode ophaalt uit het uitzonderingsobject .
Voorbeeld 8: meerdere bestanden tegelijk downloaden
De Invoke-WebRequest
cmdlet kan slechts één bestand tegelijk downloaden. In het volgende voorbeeld wordt gebruikgemaakt Start-ThreadJob
van het maken van meerdere threadtaken om meerdere bestanden tegelijk te downloaden.
$baseUri = 'https://github.com/PowerShell/PowerShell/releases/download'
$files = @(
@{
Uri = "$baseUri/v7.3.0-preview.5/PowerShell-7.3.0-preview.5-win-x64.msi"
OutFile = 'PowerShell-7.3.0-preview.5-win-x64.msi'
},
@{
Uri = "$baseUri/v7.3.0-preview.5/PowerShell-7.3.0-preview.5-win-x64.zip"
OutFile = 'PowerShell-7.3.0-preview.5-win-x64.zip'
},
@{
Uri = "$baseUri/v7.2.5/PowerShell-7.2.5-win-x64.msi"
OutFile = 'PowerShell-7.2.5-win-x64.msi'
},
@{
Uri = "$baseUri/v7.2.5/PowerShell-7.2.5-win-x64.zip"
OutFile = 'PowerShell-7.2.5-win-x64.zip'
}
)
$jobs = @()
foreach ($file in $files) {
$jobs += Start-ThreadJob -Name $file.OutFile -ScriptBlock {
$params = $using:file
Invoke-WebRequest @params
}
}
Write-Host "Downloads started..."
Wait-Job -Job $jobs
foreach ($job in $jobs) {
Receive-Job -Job $job
}
Voorbeeld 9: headervalidatie overslaan
Standaard valideert de Invoke-WebRequest
cmdlet de waarden van bekende headers met een standaard gedefinieerde waarde-indeling. In het volgende voorbeeld ziet u hoe deze validatie een fout kan veroorzaken en hoe u de parameter SkipHeaderValidation kunt gebruiken om te voorkomen dat waarden worden gevalideerd voor eindpunten die ongeldig opgemaakte waarden tolereren.
$Uri = 'https://httpbin.org/headers'
$InvalidHeaders = @{
'If-Match' = '12345'
}
Invoke-WebRequest -Uri $Uri -Headers $InvalidHeaders
Invoke-WebRequest -Uri $Uri -Headers $InvalidHeaders -SkipHeaderValidation
Invoke-WebRequest: The format of value '12345' is invalid.
StatusCode : 200
StatusDescription : OK
Content : {
"headers": {
"Host": "httpbin.org",
"If-Match": "12345",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Microsoft Windows 10.0.19044; en-US) PowerShell/7.2.5",
"X-Amzn-Trace-Id": �
RawContent : HTTP/1.1 200 OK
Date: Mon, 08 Aug 2022 16:24:24 GMT
Connection: keep-alive
Server: gunicorn/19.9.0
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
Content-Type: application�
Headers : {[Date, System.String[]], [Connection, System.String[]], [Server, System.String[]], [Access-Control-Allow-Origin, System.String[]]�}
Images : {}
InputFields : {}
Links : {}
RawContentLength : 249
RelationLink : {}
httpbin.org is een service die informatie retourneert over webaanvragen en antwoorden voor probleemoplossing. De $Uri
variabele wordt toegewezen aan het /headers
eindpunt van de service, die de headers van een aanvraag retourneert als de inhoud in het antwoord.
De If-Match
aanvraagheader is gedefinieerd in RFC-7232 sectie 3.1 en vereist dat de waarde voor die header wordt gedefinieerd met omringende aanhalingstekens. Aan $InvalidHeaders
de variabele wordt een hashtabel toegewezen waarbij de waarde van If-Match
ongeldig is omdat deze is gedefinieerd als 12345
in plaats van "12345"
.
Als u aanroept Invoke-WebRequest
met de ongeldige headers, wordt een foutrapportage geretourneerd dat de opgemaakte waarde ongeldig is. De aanvraag wordt niet verzonden naar het eindpunt.
Als u aanroept Invoke-WebRequest
met de parameter SkipHeaderValidation , wordt de validatiefout genegeerd en wordt de aanvraag naar het eindpunt verzonden. Omdat het eindpunt niet-compatibele headerwaarden tolereert, retourneert de cmdlet het antwoordobject zonder fouten.
Voorbeeld 10: Een aanvraag verzenden met behulp van HTTP 2.0
In dit voorbeeld worden de koppelingen op een webpagina opgeslagen met behulp van het HTTP 2.0-protocol. De cmdlet wordt gebruikt Invoke-WebRequest
om de inhoud van de webpagina op te halen. Vervolgens wordt gebruikgemaakt van de eigenschap Koppelingen van de BasicHtmlWebResponseObject die Invoke-WebRequest
retourneert, en de eigenschap Href van elke koppeling.
(Invoke-WebRequest -Uri 'https://aka.ms/pscore6-docs' -HttpVersion 2.0).Links.Href
Parameters
-AllowUnencryptedAuthentication
Hiermee kunt u referenties en geheimen verzenden via niet-versleutelde verbindingen. Standaard resulteert het opgeven van referenties of een verificatieoptie met een URI die niet begint met https://
een fout en wordt de aanvraag afgebroken om te voorkomen dat geheimen in tekst zonder opmaak worden gecommuniceerd via niet-versleutelde verbindingen. Als u dit gedrag op eigen risico wilt overschrijven, geeft u de parameter AllowUnencryptedAuthentication op.
Waarschuwing
Het gebruik van deze parameter is niet veilig en wordt niet aanbevolen. Het wordt alleen verstrekt voor compatibiliteit met verouderde systemen die geen versleutelde verbindingen kunnen bieden. Gebruik op eigen risico.
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Authentication
Hiermee geeft u het expliciete verificatietype op dat moet worden gebruikt voor de aanvraag. De standaardwaarde is None. De parameter Authentication kan niet worden gebruikt met de parameter UseDefaultCredentials .
Beschikbare verificatieopties:
None
: dit is de standaardoptie wanneer verificatie niet is opgegeven. Er wordt geen expliciete verificatie gebruikt.Basic
: Vereist referentie. De referenties worden verzonden als een RFC 7617 Basic Authentication-headerAuthorization: Basic
in de indeling .base64(user:password)
Bearer
: vereist de parameter Token . Verzendt een RFC 6750-headerAuthorization: Bearer
met het opgegeven token.OAuth
: vereist de parameter Token . Verzendt een RFC 6750-headerAuthorization: Bearer
met het opgegeven token.
Het opgeven van verificatie overschrijft alle Authorization
headers die zijn opgegeven aan headers of opgenomen in WebSession.
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | WebAuthenticationType |
Accepted values: | None, Basic, Bearer, OAuth |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Body
Hiermee geeft u de hoofdtekst van de aanvraag op. De hoofdtekst is de inhoud van de aanvraag die volgt op de headers.
U kunt ook een body-waarde doorsnijden naar Invoke-WebRequest
.
De parameter Body kan worden gebruikt om een lijst met queryparameters op te geven of de inhoud van het antwoord op te geven.
Wanneer de invoer een POST-aanvraag is en de hoofdtekst een tekenreeks is, wordt de waarde links van het eerste gelijkteken (=
) ingesteld als een sleutel in de formuliergegevens en wordt de resterende tekst ingesteld als de waarde. Als u meerdere sleutels wilt opgeven, gebruikt u een IDictionary-object , zoals een hash-tabel, voor de hoofdtekst.
Wanneer de invoer een GET-aanvraag is en de hoofdtekst een IDictionary is (meestal een hash-tabel), wordt de hoofdtekst als queryparameters toegevoegd aan de URI. Voor andere aanvraagtypen (zoals PATCH) wordt de hoofdtekst ingesteld als de waarde van de aanvraagbody in de standaardindeling name=value
met de waarden URL-codering.
Wanneer de invoer een System.Xml is. XmlNode-object en de XML-declaratie specificeren een codering, die codering wordt gebruikt voor de gegevens in de aanvraag, tenzij overschreven door de parameter ContentType .
De parameter Body accepteert ook een System.Net.Http.MultipartFormDataContent
-object. Dit vereenvoudigt multipart/form-data
aanvragen. Wanneer een MultipartFormDataContent-object wordt opgegeven voor Hoofdtekst, worden alle inhoudsgerelateerde headers die worden geleverd aan de parameters ContentType, Headers of WebSession overschreven door de Inhoudsheaders van het object MultipartFormDataContent . Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Certificate
Hiermee geeft u het clientcertificaat op dat wordt gebruikt voor een beveiligde webaanvraag. Voer een variabele in die een certificaat of een opdracht of expressie bevat waarmee het certificaat wordt ophaalt.
Als u een certificaat wilt zoeken, gebruikt Get-PfxCertificate
u de Get-ChildItem
cmdlet in het certificaatstation (Cert:
). Als het certificaat niet geldig is of onvoldoende bevoegdheden heeft, mislukt de opdracht.
Type: | X509Certificate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Hiermee geeft u het digitale openbare sleutelcertificaat (X509) op van een gebruikersaccount dat gemachtigd is om de aanvraag te verzenden. Voer de vingerafdruk van het certificaat in.
Certificaten worden gebruikt in verificatie op basis van clientcertificaten. Certificaten kunnen alleen worden toegewezen aan lokale gebruikersaccounts, niet aan domeinaccounts.
Als u de vingerafdruk van het certificaat wilt zien, gebruikt u de Get-Item
opdracht of Get-ChildItem
om het certificaat te zoeken in Cert:\CurrentUser\My
.
Notitie
Deze functie wordt alleen ondersteund op Windows OS-platforms.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContentType
Hiermee geeft u het inhoudstype van de webaanvraag op.
Als de waarde voor ContentType de coderingsindeling (als charset
) bevat, gebruikt de cmdlet die indeling om de hoofdtekst van de webaanvraag te coderen. Als het ContentType geen coderingsindeling opgeeft, wordt in plaats daarvan de standaardcoderingsindeling gebruikt. Een voorbeeld van een ContentType met een coderingsindeling is text/plain; charset=iso-8859-5
, waarmee het Latijnse/Cyrillische alfabet wordt opgegeven.
Als deze parameter wordt weggelaten en de aanvraagmethode POST is, Invoke-WebRequest
stelt u het inhoudstype in op application/x-www-form-urlencoded
. Anders wordt het inhoudstype niet opgegeven in de aanroep.
ContentType wordt overschreven wanneer een MultipartFormDataContent-object wordt opgegeven voor Hoofdtekst.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Hiermee geeft u een gebruikersaccount op dat gemachtigd is om de aanvraag te verzenden. Standaard is dit de huidige gebruiker.
Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential-object in dat is gegenereerd door de Get-Credential
cmdlet.
Referenties kunnen alleen worden gebruikt of in combinatie met bepaalde opties voor verificatieparameters . Als deze alleen wordt gebruikt, levert deze alleen referenties aan de externe server als de externe server een verificatievraag indient. Bij gebruik met verificatieopties worden de referenties expliciet verzonden.
Referenties worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als een SecureString.
Notitie
Zie Hoe veilig is SecureString? voor meer informatie over SecureString-gegevensbeveiliging.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CustomMethod
Hiermee geeft u een aangepaste methode die wordt gebruikt voor de webaanvraag. Dit kan worden gebruikt als de aanvraagmethode die is vereist voor het eindpunt geen beschikbare optie is in de methode. Method en CustomMethod kunnen niet samen worden gebruikt.
In dit voorbeeld wordt een TEST
HTTP-aanvraag naar de API verzonden:
Invoke-WebRequest -uri 'https://api.contoso.com/widget/' -CustomMethod 'TEST'
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | String |
Aliases: | CM |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableKeepAlive
Geeft aan dat de cmdlet de waarde KeepAlive in de HTTP-header instelt op False. KeepAlive is standaard Waar. KeepAlive brengt een permanente verbinding met de server tot stand om volgende aanvragen te vergemakkelijken.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Form
Converteert een woordenlijst naar een multipart/form-data
inzending. Formulier mag niet worden gebruikt met Hoofdtekst.
Als ContentType wordt gebruikt, wordt dit genegeerd.
De toetsen van de woordenlijst worden gebruikt als de namen van de formuliervelden. Standaard worden formulierwaarden geconverteerd naar tekenreekswaarden.
Als de waarde een System.IO.FileInfo-object is, wordt de inhoud van het binaire bestand verzonden. De naam van het bestand wordt verzonden als de bestandsnaameigenschap . Het MIME-type is ingesteld als application/octet-stream
. Get-Item
kan worden gebruikt om het leveren van het object System.IO.FileInfo te vereenvoudigen.
$Form = @{ resume = Get-Item 'c:\Users\jdoe\Documents\John Doe.pdf' }
Als de waarde een verzamelingstype is, zoals matrices of Lijsten, wordt het veld for meerdere keren verzonden. De waarden van de lijst worden standaard behandeld als tekenreeksen. Als de waarde een System.IO.FileInfo-object is, wordt de inhoud van het binaire bestand verzonden. Geneste verzamelingen worden niet ondersteund.
$Form = @{ tags = 'Vacation', 'Italy', '2017' pictures = Get-ChildItem 'c:\Users\jdoe\Pictures\2017-Italy' }
In het bovenstaande voorbeeld wordt het tags
veld drie keer in het formulier opgegeven, één keer voor elk van Vacation
, Italy
en 2017
. Het pictures
veld wordt ook eenmaal verzonden voor elk bestand in de 2017-Italy
map. De binaire inhoud van de bestanden in die map wordt verzonden als de waarden.
Deze functie is toegevoegd in PowerShell 6.1.0.
Type: | IDictionary |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Headers
Hiermee geeft u de headers van de webaanvraag. Voer een hash-tabel of woordenlijst in.
Inhoudsgerelateerde headers, zoals Content-Type
worden overschreven wanneer een MultipartFormDataContent-object wordt opgegeven voor Hoofdtekst.
Type: | IDictionary |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HttpVersion
Hiermee geeft u de HTTP-versie die wordt gebruikt voor de aanvraag. De standaardwaarde is 1.1
.
Geldige waarden zijn:
- 1.0
- 1.1
- 2,0
- 3,0
Type: | Version |
Position: | Named |
Default value: | 1.1 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InFile
Haalt de inhoud van de webaanvraag op uit een bestand. Voer een pad en bestandsnaam in. Als u het pad weglaat, is de standaardwaarde de huidige locatie.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumRedirection
Hiermee geeft u op hoe vaak PowerShell een verbinding omleidt naar een alternatieve URI (Uniform Resource Identifier) voordat de verbinding mislukt. De standaardwaarde is 5. Een waarde van 0 (nul) voorkomt alle omleiding.
Type: | Int32 |
Position: | Named |
Default value: | 5 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumRetryCount
Hiermee geeft u op hoe vaak PowerShell een verbinding opnieuw probeert uit te proberen wanneer een foutcode tussen 400 en 599, inclusief of 304 wordt ontvangen. Zie ook De parameter RetryIntervalSec voor het opgeven van het aantal nieuwe pogingen.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Method
Hiermee geeft u de methode die wordt gebruikt voor de webaanvraag. De aanvaardbare waarden voor deze parameter zijn:
Default
Delete
Get
Head
Merge
Options
Patch
Post
Put
Trace
De parameter CustomMethod kan worden gebruikt voor aanvraagmethoden die hierboven niet worden vermeld.
Type: | WebRequestMethod |
Accepted values: | Default, Get, Head, Post, Put, Delete, Trace, Options, Merge, Patch |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoProxy
Geeft aan dat de cmdlet geen proxy mag gebruiken om de bestemming te bereiken. Wanneer u de proxy die in de omgeving is geconfigureerd, moet overslaan, gebruikt u deze schakeloptie. Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OutFile
Hiermee geeft u het uitvoerbestand op waarvoor deze cmdlet de hoofdtekst van het antwoord opslaat. Voer een pad en bestandsnaam in.
Als u het pad weglaat, is de standaardwaarde de huidige locatie. De naam wordt behandeld als een letterlijk pad.
Namen met vierkante haken ([]
) moeten tussen enkele aanhalingstekens () worden geplaatst.'
Retourneert standaard Invoke-WebRequest
de resultaten naar de pijplijn. Als u de resultaten naar een bestand en naar de pijplijn wilt verzenden, gebruikt u de parameter Passthru .
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Geeft aan dat de cmdlet de resultaten retourneert, naast het schrijven ervan naar een bestand. Deze parameter is alleen geldig wanneer de parameter OutFile ook wordt gebruikt in de opdracht.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PreserveAuthorizationOnRedirect
Geeft aan dat de cmdlet de Authorization
header moet behouden, indien aanwezig, tussen omleidingen.
Standaard verwijdert de cmdlet de Authorization
header voordat deze wordt omgeleid. Als u deze parameter opgeeft, wordt deze logica uitgeschakeld voor gevallen waarin de header naar de omleidingslocatie moet worden verzonden.
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Proxy
Hiermee geeft u een proxyserver voor de aanvraag op in plaats van rechtstreeks verbinding te maken met de internetbron. Voer de URI van een netwerkproxyserver in.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProxyCredential
Hiermee geeft u een gebruikersaccount op dat gemachtigd is om de proxyserver te gebruiken die is opgegeven door de parameter Proxy . Standaard is dit de huidige gebruiker.
Typ een gebruikersnaam, zoals User01
of Domain01\User01
, of voer een PSCredential-object in, zoals een object dat wordt gegenereerd door de Get-Credential
cmdlet.
Deze parameter is alleen geldig wanneer de proxyparameter ook wordt gebruikt in de opdracht. U kunt de parameters ProxyCredential en ProxyUseDefaultCredentials niet in dezelfde opdracht gebruiken.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProxyUseDefaultCredentials
Geeft aan dat de cmdlet de referenties van de huidige gebruiker gebruikt voor toegang tot de proxyserver die is opgegeven door de proxyparameter .
Deze parameter is alleen geldig wanneer de proxyparameter ook wordt gebruikt in de opdracht. U kunt de parameters ProxyCredential en ProxyUseDefaultCredentials niet in dezelfde opdracht gebruiken.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Resume
Voert een poging uit om het downloaden van een gedeeltelijk bestand te hervatten. Voor hervatten is OutFile vereist.
Hervatten werkt alleen op de grootte van het lokale bestand en het externe bestand en voert geen andere validatie uit dat het lokale bestand en het externe bestand hetzelfde zijn.
Als de lokale bestandsgrootte kleiner is dan de grootte van het externe bestand, probeert de cmdlet het downloaden van het bestand te hervatten en de resterende bytes toe te voegen aan het einde van het bestand.
Als de lokale bestandsgrootte hetzelfde is als de externe bestandsgrootte, wordt er geen actie ondernomen en wordt ervan uitgegaan dat het downloaden al is voltooid.
Als de lokale bestandsgrootte groter is dan de grootte van het externe bestand, wordt het lokale bestand overschreven en wordt het hele externe bestand opnieuw gedownload. Dit gedrag is hetzelfde als het gebruik van OutFile zonder Cv.
Als de externe server het hervatten van downloaden niet ondersteunt, wordt het lokale bestand overschreven en wordt het hele externe bestand opnieuw gedownload. Dit gedrag is hetzelfde als het gebruik van OutFile zonder Cv.
Als het lokale bestand niet bestaat, wordt het lokale bestand gemaakt en wordt het hele externe bestand gedownload. Dit gedrag is hetzelfde als het gebruik van OutFile zonder Cv.
Deze functie is toegevoegd in PowerShell 6.1.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RetryIntervalSec
Hiermee geeft u het interval tussen nieuwe pogingen voor de verbinding wanneer een foutcode tussen 400 en 599, inclusief of 304 wordt ontvangen. Zie ook De parameter MaximumRetryCount voor het opgeven van het aantal nieuwe pogingen. De waarde moet tussen 1
en zijn [int]::MaxValue
.
Type: | Int32 |
Position: | Named |
Default value: | 5 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionVariable
Hiermee geeft u een variabele op waarvoor deze cmdlet een webaanvraagsessie maakt en deze opslaat in de waarde.
Voer een variabelenaam in zonder het dollarteken ($
).
Wanneer u een sessievariabele opgeeft, Invoke-WebRequest
maakt u een sessieobject voor webaanvragen en wijst u dit toe aan een variabele met de opgegeven naam in uw PowerShell-sessie. U kunt de variabele in uw sessie gebruiken zodra de opdracht is voltooid.
Vóór PowerShell 7.4 is de webaanvraagsessie geen permanente verbinding. Het is een object dat informatie bevat over de verbinding en de aanvraag, waaronder cookies, referenties, de maximale omleidingswaarde en de tekenreeks van de gebruikersagent. U kunt deze gebruiken om de status en gegevens te delen tussen webaanvragen.
Vanaf PowerShell 7.4 is de webaanvraagsessie permanent zolang de eigenschappen van de sessie niet worden overschreven in een volgende aanvraag. Wanneer dat zo is, maakt de cmdlet de sessie opnieuw met de nieuwe waarden. De permanente sessies verminderen de overhead voor herhaalde aanvragen, waardoor ze veel sneller worden.
Als u de webaanvraagsessie wilt gebruiken in volgende webaanvragen, geeft u de sessievariabele op in de waarde van de parameter WebSession . PowerShell gebruikt de gegevens in het sessieobject van de webaanvraag bij het tot stand brengen van de nieuwe verbinding. Als u een waarde in de webaanvraagsessie wilt overschrijven, gebruikt u een cmdlet-parameter, zoals UserAgent of Credential. Parameterwaarden hebben voorrang op waarden in de webaanvraagsessie.
U kunt de parameters SessionVariable en WebSession niet in dezelfde opdracht gebruiken.
Type: | String |
Aliases: | SV |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipCertificateCheck
Certificaatvalidatiecontroles overslaan. Dit omvat alle validaties, zoals vervaldatum, intrekking, vertrouwde basisinstantie, enzovoort.
Waarschuwing
Het gebruik van deze parameter is niet veilig en wordt niet aanbevolen. Deze switch is alleen bedoeld om te worden gebruikt voor bekende hosts die een zelfondertekend certificaat gebruiken voor testdoeleinden. Gebruik op eigen risico.
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipHeaderValidation
Geeft aan dat de cmdlet headers aan de aanvraag moet toevoegen zonder validatie.
Deze schakeloptie moet worden gebruikt voor sites waarvoor headerwaarden zijn vereist die niet voldoen aan de normen. Als u deze schakeloptie opgeeft, wordt validatie uitgeschakeld, zodat de waarde niet kan worden doorgegeven. Wanneer dit is opgegeven, worden alle headers zonder validatie toegevoegd.
Met deze schakeloptie wordt validatie uitgeschakeld voor waarden die zijn doorgegeven aan de parameters ContentType, Headers en UserAgent .
Deze functie is toegevoegd in PowerShell 6.0.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipHttpErrorCheck
Deze parameter zorgt ervoor dat de cmdlet HTTP-foutstatussen negeert en reacties blijft verwerken. De foutreacties worden naar de pijplijn geschreven alsof ze zijn geslaagd.
Deze parameter is geïntroduceerd in PowerShell 7.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SslProtocol
Hiermee stelt u de SSL/TLS-protocollen in die zijn toegestaan voor de webaanvraag. Standaard zijn alle SSL/TLS-protocollen die door het systeem worden ondersteund, toegestaan. SslProtocol maakt het mogelijk om te beperken tot specifieke protocollen voor nalevingsdoeleinden.
Deze waarden worden gedefinieerd als een opsomming op basis van een vlag. U kunt meerdere waarden combineren om meerdere vlaggen in te stellen met behulp van deze parameter. De waarden kunnen worden doorgegeven aan de parameter SslProtocol als een matrix met waarden of als een door komma's gescheiden tekenreeks van deze waarden. De cmdlet combineert de waarden met behulp van een binaire-OF-bewerking. Het doorgeven van waarden als een matrix is de eenvoudigste optie en stelt u ook in staat om tabvoltooiing te gebruiken voor de waarden. Mogelijk kunt u niet op alle platforms meerdere opties definiëren.
Notitie
Op niet-Windows-platformen is het mogelijk niet mogelijk om of Tls12
als optie te leverenTls
. Ondersteuning voor Tls13
is niet beschikbaar op alle besturingssystemen en moet per besturingssysteem worden geverifieerd.
Deze functie is toegevoegd in PowerShell 6.0.0 en ondersteuning voor Tls13
is toegevoegd in PowerShell 7.1.
Type: | WebSslProtocol |
Accepted values: | Default, Tls, Tls11, Tls12 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TimeoutSec
Hiermee geeft u op hoe lang de aanvraag in behandeling kan zijn voordat er een time-out optreedt. Voer een waarde in seconden in. De standaardwaarde, 0, geeft een onbepaalde time-out op.
Het kan tot 15 seconden duren voordat een DNS-query (Domain Name System) wordt geretourneerd of een time-out optreedt. Als uw aanvraag een hostnaam bevat waarvoor omzetting is vereist en u TimeoutSec instelt op een waarde die groter is dan nul, maar minder dan 15 seconden, kan het 15 seconden of langer duren voordat een WebException wordt gegenereerd en er een time-out optreedt voor uw aanvraag.
Type: | Int32 |
Position: | Named |
Default value: | 0 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Token
Het OAuth- of Bearer-token dat moet worden opgenomen in de aanvraag. Token is vereist voor bepaalde verificatieopties . Het kan niet onafhankelijk worden gebruikt.
Token neemt een SecureString
met het token. Gebruik het volgende om het token handmatig op te geven:
Invoke-WebRequest -Uri $uri -Authentication OAuth -Token (Read-Host -AsSecureString)
Deze parameter is geïntroduceerd in PowerShell 6.0.
Type: | SecureString |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TransferEncoding
Hiermee geeft u een waarde op voor de http-antwoordheader voor overdrachtcodering. De aanvaardbare waarden voor deze parameter zijn:
Chunked
Compress
Deflate
GZip
Identity
Type: | String |
Accepted values: | chunked, compress, deflate, gzip, identity |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Uri
Hiermee geeft u de Uniform Resource Identifier (URI) van de internetbron waarnaar de webaanvraag wordt verzonden. Voer een URI in. Deze parameter ondersteunt alleen HTTP of HTTPS.
Deze parameter is vereist. De parameternaam Uri is optioneel.
Type: | Uri |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseBasicParsing
Deze parameter is afgeschaft. Vanaf PowerShell 6.0.0 gebruiken alle webaanvragen alleen basisparsering. Deze parameter is alleen opgenomen voor achterwaartse compatibiliteit en elk gebruik ervan heeft geen invloed op de werking van de cmdlet.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseDefaultCredentials
Geeft aan dat de cmdlet de referenties van de huidige gebruiker gebruikt om de webaanvraag te verzenden. Dit kan niet worden gebruikt met verificatie of referentie en wordt mogelijk niet ondersteund op alle platforms.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UserAgent
Hiermee geeft u een tekenreeks voor de gebruikersagent op voor de webaanvraag.
De standaardgebruikersagent is vergelijkbaar met Mozilla/5.0 (Windows NT 10.0; Microsoft Windows 10.0.15063; en-US) PowerShell/6.0.0
met kleine variaties voor elk besturingssysteem en platform.
Als u een website wilt testen met de standaardtekenreeks voor de gebruikersagent die door de meeste internetbrowsers wordt gebruikt, gebruikt u de eigenschappen van de klasse PSUserAgent , zoals Chrome, FireFox, InternetExplorer, Opera en Safari.
De volgende opdracht maakt bijvoorbeeld gebruik van de tekenreeks van de gebruikersagent voor Internet Explorer: Invoke-WebRequest -Uri https://website.com/ -UserAgent ([Microsoft.PowerShell.Commands.PSUserAgent]::InternetExplorer)
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WebSession
Hiermee geeft u een webaanvraagsessie op. Voer de naam van de variabele in, inclusief het dollarteken ($
).
Als u een waarde in de webaanvraagsessie wilt overschrijven, gebruikt u een cmdlet-parameter, zoals UserAgent of Credential. Parameterwaarden hebben voorrang op waarden in de webaanvraagsessie. Inhoudsgerelateerde headers, zoals Content-Type
, worden ook overschreven wanneer een MultipartFormDataContent-object wordt opgegeven voor Hoofdtekst.
In tegenstelling tot een externe sessie is de webaanvraagsessie geen permanente verbinding. Het is een object dat informatie bevat over de verbinding en de aanvraag, waaronder cookies, referenties, de maximale omleidingswaarde en de tekenreeks van de gebruikersagent. U kunt deze gebruiken om de status en gegevens te delen tussen webaanvragen.
Als u een webaanvraagsessie wilt maken, voert u een variabelenaam in, zonder dollarteken, in de waarde van de parameter SessionVariable van een Invoke-WebRequest
opdracht. Invoke-WebRequest
maakt de sessie en slaat deze op in de variabele. Gebruik in volgende opdrachten de variabele als de waarde van de parameter WebSession .
U kunt de parameters SessionVariable en WebSession niet in dezelfde opdracht gebruiken.
Type: | WebRequestSession |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
U kunt de hoofdtekst van een webaanvraag doorsnijden naar deze cmdlet.
Uitvoerwaarden
Deze cmdlet retourneert het antwoordobject dat het resultaat van de webaanvraag vertegenwoordigt.
Notities
PowerShell bevat de volgende aliassen voor Invoke-WebRequest
:
- Alle platformen:
iwr
Vanaf PowerShell 6.0.0 Invoke-WebRequest
ondersteunt alleen eenvoudige parsering.
Zie BasicHtmlWebResponseObject voor meer informatie.
Vanwege wijzigingen in .NET Core 3.1 gebruiken PowerShell 7.0 en hoger de eigenschap HttpClient.DefaultProxy om de proxyconfiguratie te bepalen.
De waarde van deze eigenschap wordt bepaald door uw platform:
- Voor Windows: leest proxyconfiguratie uit omgevingsvariabelen. Als deze variabelen niet zijn gedefinieerd, wordt de eigenschap afgeleid van de proxy-instellingen van de gebruiker.
- Voor macOS: leest proxyconfiguratie uit omgevingsvariabelen. Als deze variabelen niet zijn gedefinieerd, wordt de eigenschap afgeleid van de proxy-instellingen van het systeem.
- Voor Linux: hiermee leest u de proxyconfiguratie uit omgevingsvariabelen. Als deze variabelen niet zijn gedefinieerd, initialiseert de eigenschap een niet-geconfigureerd exemplaar dat alle adressen omzeilt.
De omgevingsvariabelen die worden gebruikt voor DefaultProxy
initialisatie op Windows- en Unix-platforms zijn:
HTTP_PROXY
: de hostnaam of het IP-adres van de proxyserver die wordt gebruikt voor HTTP-aanvragen.HTTPS_PROXY
: de hostnaam of het IP-adres van de proxyserver die wordt gebruikt voor HTTPS-aanvragen.ALL_PROXY
: de hostnaam of het IP-adres van de proxyserver die wordt gebruikt voor HTTP- en HTTPS-aanvragen voor het gevalHTTP_PROXY
datHTTPS_PROXY
niet is gedefinieerd.NO_PROXY
: een door komma's gescheiden lijst met hostnamen die moeten worden uitgesloten van proxying.