Delen via


Invoke-WebRequest

Hiermee haalt u inhoud op van een webpagina op internet.

Syntax

Default (Standaard)

Invoke-WebRequest
    [-UseBasicParsing]
    [-Uri] <Uri>
    [-WebSession <WebRequestSession>]
    [-SessionVariable <String>]
    [-Credential <PSCredential>]
    [-UseDefaultCredentials]
    [-CertificateThumbprint <String>]
    [-Certificate <X509Certificate>]
    [-UserAgent <String>]
    [-DisableKeepAlive]
    [-TimeoutSec <Int32>]
    [-Headers <IDictionary>]
    [-MaximumRedirection <Int32>]
    [-Method <WebRequestMethod>]
    [-Proxy <Uri>]
    [-ProxyCredential <PSCredential>]
    [-ProxyUseDefaultCredentials]
    [-Body <Object>]
    [-ContentType <String>]
    [-TransferEncoding <String>]
    [-InFile <String>]
    [-OutFile <String>]
    [-PassThru]
    [<CommonParameters>]

Description

De Invoke-WebRequest cmdlet verzendt HTTP-, HTTPS-, FTP- en FILE-aanvragen naar een webpagina of webservice. Het parseert het antwoord en retourneert verzamelingen formulieren, koppelingen, afbeeldingen en andere belangrijke HTML-elementen.

Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.

Waarschuwing

Parseert standaard Invoke-WebRequest de inhoud van de webpagina. Scriptcode op de webpagina kan worden uitgevoerd wanneer de pagina wordt geparseerd. Op 9 december 2025 heeft Microsoft een beveiligingsupdate uitgebracht voor CVE-2025-54100 waarmee het standaardgedrag van Invoke-WebRequest. Nadat u de updates hebt geïnstalleerd, ziet u, wanneer u de Invoke-WebRequest opdracht gebruikt, de volgende bevestigingsprompt met een beveiligingswaarschuwing voor het uitvoeren van scripts:

Security Warning: Script Execution Risk
Invoke-WebRequest parses the content of the web page. Script code in the web page might be
run when the page is parsed.
      RECOMMENDED ACTION:
      Use the -UseBasicParsing switch to avoid script code execution.
      Do you want to continue?

Als u de bevestigingsprompt wilt voorkomen, moet u de parameter UseBasicParsing gebruiken. U kunt deze prompt niet omzeilen zonder de parameter UseBasicParsing te gebruiken. Als u 'Y' beantwoordt aan de prompt, wordt de opdracht uitgevoerd met volledige parsering van de webpagina-inhoud, die scriptcode op de webpagina kan uitvoeren.

Zie PowerShell 5.1 voor meer informatie over deze beveiligingsupdate: Uitvoering van scripts van webinhoud voorkomen.

Deze opdracht kan worden uitgevoerd met behulp van de iwr, curlof wget aliassen.

Voorbeelden

Voorbeeld 1: Een webaanvraag verzenden

In dit voorbeeld wordt de cmdlet Invoke-WebRequest gebruikt om een webaanvraag naar de Bing.com-site te verzenden.

$Response = Invoke-WebRequest -UseBasicParsing -Uri https://www.bing.com?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 gegevens die worden geretourneerd door Invoke-WebRequest , worden opgeslagen in de $Response variabele. De eigenschap InputFields van het antwoord bevat de formuliervelden. Where-Object wordt gebruikt om de formuliervelden te filteren op de velden waar de eigenschap Naam als *-waarde is. De gefilterde resultaten worden doorgesluisd naar Select-Object om de eigenschappen Name en Value te selecteren.

Voorbeeld 2: Een stateful webservice gebruiken

In dit voorbeeld ziet u hoe u de cmdlet Invoke-WebRequest gebruikt met een stateful webservice, zoals Facebook.

$R = Invoke-WebRequest https://www.facebook.com/login.php -SessionVariable fb
# This command stores the first form in the Forms property of the $R variable in the $Form variable.
$Form = $R.Forms[0]
# This command shows the fields available in the form.
$Form.Fields
Key                     Value
---                     -----
...
email
pass
...
# These commands populate the username and password of the respective form fields.
$Form.Fields["email"]="User01@Fabrikam.com"
$Form.Fields["pass"]="P@ssw0rd"
# This command creates the Uri that will be used to log in to facebook.
# The value of the Uri parameter is the value of the Action property of the form.
$Uri = "https://www.facebook.com" + $Form.Action
# Now the Invoke-WebRequest cmdlet is used to sign into the Facebook web service.
# The WebRequestSession object in the $FB variable is passed as the value of the WebSession parameter.
# The value of the Body parameter is the hash table in the Fields property of the form.
# The value of the *Method* parameter is POST. The command saves the output in the $R variable.
$R = Invoke-WebRequest -Uri $Uri -WebSession $FB -Method Post -Body $Form.Fields
$R.StatusDescription

De eerste opdracht gebruikt de cmdlet Invoke-WebRequest om een aanmeldingsaanvraag te verzenden. De opdracht geeft een waarde van 'FB' op voor de waarde van de parameter SessionVariable en slaat het resultaat op in de $R variabele. Wanneer de opdracht is voltooid, bevat de variabele $R een HtmlWebResponseObject- en bevat de variabele $FB een WebRequestSession-object.

Nadat de Invoke-WebRequest cmdlet zich heeft aangemeld bij Facebook, geeft de eigenschap StatusDescription van het webantwoordobject in de variabele $R aan dat de gebruiker is aangemeld.

Voorbeeld 3: Koppelingen ophalen van een webpagina

Met deze opdracht worden de koppelingen op een webpagina opgeslagen.

(Invoke-WebRequest -Uri "https://devblogs.microsoft.com/powershell/").Links.Href

De cmdlet Invoke-WebRequest haalt de inhoud van de webpagina op. Vervolgens wordt de eigenschap Links van de geretourneerde HtmlWebResponseObject gebruikt om de eigenschap Href van elke koppeling weer te geven.

Voorbeeld 4: Niet-geslaagde berichten van Invoke-WebRequest

Wanneer Invoke-WebRequest een HTTP-bericht zonder succes tegenkomt (404, 500, enzovoort), wordt er geen uitvoer geretourneerd en wordt er een afsluitfout gegenereerd. Als u de fout wilt ondervangen en de StatusCode 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 opgevangen door het catch blok, waarmee de StatusCode- wordt opgehaald uit het object Exception.

Voorbeeld 5: Meerdere bestanden tegelijk downloaden

De cmdlet Invoke-WebRequest kan slechts één bestand tegelijk downloaden. In het volgende voorbeeld wordt Start-ThreadJob gebruikt om meerdere threadtaken te maken 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
}

Opmerking

Als u de Start-ThreadJob cmdlet wilt gebruiken, moet u de ThreadJob-module installeren vanuit de PowerShell Gallery.

Parameters

-Body

Specificeert het onderdeel van het verzoek. De hoofdtekst is de inhoud van de aanvraag die de headers volgt. U kunt ook een body-waarde doorsluizen naar Invoke-WebRequest.

De parameter Hoofdtekst kan worden gebruikt om een lijst met queryparameters op te geven of de inhoud van het antwoord op te geven.

Wanneer de invoer een GET-aanvraag is en de hoofdtekst een IDictionary (meestal een hash-tabel), wordt de hoofdtekst als queryparameters aan de URI toegevoegd. Voor andere aanvraagtypen (zoals POST) wordt de hoofdtekst ingesteld als de waarde van de aanvraagbody in de standaardindeling name=value .

Wanneer de hoofdtekst een formulier is of als uitvoer van een Invoke-WebRequest aanroep, stelt PowerShell de aanvraaginhoud in op de formuliervelden. Voorbeeld:

$r = Invoke-WebRequest https://website.com/login.aspx $r.Forms[0].Name = "MyName" $r.Forms[0].Password = "MyPassword" Invoke-RestMethod https://website.com/service.aspx -Body $r

  • of-

Invoke-RestMethod https://website.com/service.aspx -Body $r.Forms[0]

Parametereigenschappen

Type:Object
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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 die het certificaat ophaalt.

Als u een certificaat wilt zoeken, gebruikt u Get-PfxCertificate of de Get-ChildItem-cmdlet in het certificaatstation (Cert:). Als het certificaat niet geldig is of niet over voldoende autoriteit beschikt, mislukt de opdracht.

Parametereigenschappen

Type:X509Certificate
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-CertificateThumbprint

Hiermee geeft u het certificaat voor de digitale openbare sleutel (X509) van een gebruikersaccount op 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 opdracht Get-Item of Get-ChildItem om het certificaat in Cert:\CurrentUser\Myte vinden.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ContentType

Hiermee geeft u het inhoudstype van de webaanvraag op.

Als de waarde voor ContentType de coderingsindeling (zoals charset) bevat, gebruikt de cmdlet die indeling om de hoofdtekst van de webaanvraag te coderen. Als de 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 Latijns/Cyrillisch alfabet wordt opgegeven.

Als u de parameter weglaat, kan het inhoudstype afwijken op basis van de HTTP-methode die u gebruikt:

  • Voor een POST-methode wordt het inhoudstype application/x-www-form-urlencoded
  • Voor een PUT-methode wordt het inhoudstype application/json
  • Voor andere methoden wordt het inhoudstype niet opgegeven in de aanvraag

Als u de parameter InFile gebruikt om een bestand te uploaden, moet u het inhoudstype instellen. Meestal moet het type worden application/octet-stream. U moet echter het inhoudstype instellen op basis van de vereisten van het eindpunt.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om de aanvraag te verzenden. De standaardwaarde is 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 worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als een SecureString.

Opmerking

Zie voor meer informatie over SecureString gegevensbeveiliging Hoe veilig is SecureString?.

Parametereigenschappen

Type:PSCredential
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-DisableKeepAlive

Geeft aan dat de cmdlet de KeepAlive--waarde in de HTTP-header instelt op False. Standaard is KeepAlive-Waar. KeepAlive- brengt een permanente verbinding tot stand met de server om volgende aanvragen te vergemakkelijken.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Headers

Hiermee specificeert u de headers van het webverzoek. Voer een hash-tabel of woordenlijst in.

Als u UserAgent-headers wilt instellen, gebruikt u de parameter UserAgent. U kunt deze parameter niet gebruiken om UserAgent- of cookieheaders op te geven.

Parametereigenschappen

Type:IDictionary
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-InFile

Hiermee haalt u de inhoud van de hoofdtekst van de webaanvraag op uit een bestand. Voer een pad en bestandsnaam in. Als u het pad weglaat, is de standaardlocatie de huidige locatie.

U moet ook het inhoudstype van de aanvraag instellen. Als u bijvoorbeeld een bestand wilt uploaden, moet u het inhoudstype instellen. Meestal moet het type worden application/octet-stream. U moet echter het inhoudstype instellen op basis van de vereisten van het eindpunt.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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 omleidingen.

Parametereigenschappen

Type:Int32
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Method

Hiermee geeft u de methode op die wordt gebruikt voor de webaanvraag. De acceptabele waarden voor deze parameter zijn:

  • Default
  • Delete
  • Get
  • Head
  • Merge
  • Options
  • Patch
  • Post
  • Put
  • Trace

Parametereigenschappen

Type:WebRequestMethod
Default value:None
Geaccepteerde waarden:Default, Get, Head, Post, Put, Delete, Trace, Options, Merge, Patch
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-OutFile

Hiermee geeft u het uitvoerbestand waarvoor deze cmdlet de hoofdtekst van het antwoord opslaat. Voer een pad en bestandsnaam in. Als u het pad weglaat, is de standaardlocatie de huidige locatie.

Standaard retourneert Invoke-WebRequest de resultaten naar de pijplijn. Gebruik de parameter PassThru om de resultaten naar een bestand en naar de pijplijn te verzenden.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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.

Opmerking

Wanneer u de parameter PassThru gebruikt, wordt de uitvoer naar de pijplijn geschreven, maar is het bestand leeg. Zie PowerShell-probleem #15409voor meer informatie.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Proxy

Hiermee geeft u een proxyserver voor de aanvraag op, in plaats van rechtstreeks verbinding te maken met de internetresource. Voer de URI van een netwerkproxyserver in.

Parametereigenschappen

Type:Uri
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ProxyCredential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om de proxyserver te gebruiken die is opgegeven door de parameter Proxy. De standaardwaarde is de huidige gebruiker.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential--object in, zoals een object dat is gegenereerd door de Get-Credential-cmdlet.

Deze parameter is alleen geldig wanneer de parameter Proxy ook wordt gebruikt in de opdracht. U kunt de parameters ProxyCredential en ProxyUseDefaultCredentials niet in dezelfde opdracht gebruiken.

Parametereigenschappen

Type:PSCredential
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-ProxyUseDefaultCredentials

Geeft aan dat de cmdlet de referenties van de huidige gebruiker gebruikt voor toegang tot de proxyserver die is opgegeven door de parameter Proxy.

Deze parameter is alleen geldig wanneer de parameter Proxy ook wordt gebruikt in de opdracht. U kunt de parameters ProxyCredential en ProxyUseDefaultCredentials niet in dezelfde opdracht gebruiken.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-SessionVariable

Hiermee geeft u een variabele op waarvoor deze cmdlet een webaanvraagsessie maakt en opslaat in de waarde. Voer een variabelenaam in zonder het dollarteken ($) symbool.

Wanneer u een sessievariabele opgeeft, Invoke-WebRequest een sessieobject voor webaanvragen maakt en dit toewijst aan een variabele met de opgegeven naam in uw PowerShell-sessie. U kunt de variabele in uw sessie gebruiken zodra de opdracht is voltooid.

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 status en gegevens te delen tussen webaanvragen.

Als u de sessie met webaanvragen wilt gebruiken in volgende webaanvragen, geeft u de sessievariabele op in de waarde van de WebSession parameter. PowerShell gebruikt de gegevens in het sessieobject voor webaanvragen 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 SessionVariable en WebSession parameters niet gebruiken in dezelfde opdracht.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False
Aliassen:SV

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten: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) retourneert of een time-out optreedt. Als uw aanvraag een hostnaam bevat waarvoor oplossing 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.

Parametereigenschappen

Type:Int32
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-TransferEncoding

Hiermee geeft u een waarde op voor de http-antwoordheader voor overdrachtscodering. De acceptabele waarden voor deze parameter zijn:

  • Chunked
  • Compress
  • Deflate
  • GZip
  • Identity

Parametereigenschappen

Type:String
Default value:None
Geaccepteerde waarden:chunked, compress, deflate, gzip, identity
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Uri

Hiermee geeft u de URI (Uniform Resource Identifier) van de internetresource waarnaar de webaanvraag wordt verzonden. Voer een URI in. Deze parameter ondersteunt HTTP-, HTTPS-, FTP- en FILE-waarden.

Deze parameter is vereist. De parameternaam URI- is optioneel.

Parametereigenschappen

Type:Uri
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-UseBasicParsing

Geeft aan dat de cmdlet het antwoordobject gebruikt voor HTML-inhoud zonder DOM-parsering (Document Object Model). Deze parameter is vereist wanneer Internet Explorer niet is geïnstalleerd op de computers, zoals op een Server Core-installatie van een Windows Server-besturingssysteem.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-UseDefaultCredentials

Geeft aan dat de cmdlet de referenties van de huidige gebruiker gebruikt om de webaanvraag te verzenden.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-UserAgent

Hiermee stelt u een gebruikersagent-tekenreeks voor de webaanvraag in. De standaardgebruikersagent is vergelijkbaar met Mozilla/5.0 (Windows NT; Windows NT 6.1; en-US) WindowsPowerShell/3.0 met kleine variaties voor elk besturingssysteem en platform.

Gebruik de eigenschappen van de PSUserAgent klasse, zoals Chrome, Firefox, InternetExplorer, Opera en Safari om een website te testen met de standaardtekenreeks voor gebruikersagenten die door de meeste internetbrowsers worden gebruikt. 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)

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-WebSession

Specificeert een webverzoeksessie. 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.

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 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. In volgende opdrachten gebruikt u de variabele als de waarde van de parameter WebSession.

U kunt de SessionVariable en WebSession parameters niet gebruiken in dezelfde opdracht.

Parametereigenschappen

Type:WebRequestSession
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

Invoerwaarden

Object

U kunt de hoofdtekst van een webaanvraag doorsluisen naar deze cmdlet.

Uitvoerwaarden

HtmlWebResponseObject

Deze cmdlet retourneert het antwoordobject dat het resultaat van de webaanvraag vertegenwoordigt.

Notities

Windows PowerShell bevat de volgende aliassen voor Invoke-WebRequest:

  • iwr
  • curl
  • wget