Invoke-RestMethod
HTTP- vagy HTTPS-kérést küld egy RESTful webszolgáltatásnak.
Syntax
StandardMethod (Alapértelmezett)
Invoke-RestMethod
[-Uri] <Uri>
[-FollowRelLink]
[-MaximumFollowRelLink <Int32>]
[-ResponseHeadersVariable <String>]
[-StatusCodeVariable <String>]
[-UseBasicParsing]
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-ConnectionTimeoutSeconds <Int32>]
[-OperationTimeoutSeconds <Int32>]
[-Headers <IDictionary>]
[-SkipHeaderValidation]
[-AllowInsecureRedirect]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-PreserveAuthorizationOnRedirect]
[-RetryIntervalSec <Int32>]
[-Method <WebRequestMethod>]
[-PreserveHttpMethodOnRedirect]
[-UnixSocket <UnixDomainSocketEndPoint>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-ProxyUseDefaultCredentials]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[<CommonParameters>]
StandardMethodNoProxy
Invoke-RestMethod
[-Uri] <Uri>
[-FollowRelLink]
[-MaximumFollowRelLink <Int32>]
[-ResponseHeadersVariable <String>]
[-StatusCodeVariable <String>]
[-UseBasicParsing]
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-ConnectionTimeoutSeconds <Int32>]
[-OperationTimeoutSeconds <Int32>]
[-Headers <IDictionary>]
[-SkipHeaderValidation]
[-AllowInsecureRedirect]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-PreserveAuthorizationOnRedirect]
[-RetryIntervalSec <Int32>]
[-Method <WebRequestMethod>]
[-PreserveHttpMethodOnRedirect]
[-UnixSocket <UnixDomainSocketEndPoint>]
[-NoProxy]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[<CommonParameters>]
CustomMethod
Invoke-RestMethod
[-Uri] <Uri>
-CustomMethod <String>
[-FollowRelLink]
[-MaximumFollowRelLink <Int32>]
[-ResponseHeadersVariable <String>]
[-StatusCodeVariable <String>]
[-UseBasicParsing]
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-ConnectionTimeoutSeconds <Int32>]
[-OperationTimeoutSeconds <Int32>]
[-Headers <IDictionary>]
[-SkipHeaderValidation]
[-AllowInsecureRedirect]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-PreserveAuthorizationOnRedirect]
[-RetryIntervalSec <Int32>]
[-PreserveHttpMethodOnRedirect]
[-UnixSocket <UnixDomainSocketEndPoint>]
[-Proxy <Uri>]
[-ProxyCredential <PSCredential>]
[-ProxyUseDefaultCredentials]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[<CommonParameters>]
CustomMethodNoProxy
Invoke-RestMethod
[-Uri] <Uri>
-CustomMethod <String>
[-FollowRelLink]
[-MaximumFollowRelLink <Int32>]
[-ResponseHeadersVariable <String>]
[-StatusCodeVariable <String>]
[-UseBasicParsing]
[-HttpVersion <Version>]
[-WebSession <WebRequestSession>]
[-SessionVariable <String>]
[-AllowUnencryptedAuthentication]
[-Authentication <WebAuthenticationType>]
[-Credential <PSCredential>]
[-UseDefaultCredentials]
[-CertificateThumbprint <String>]
[-Certificate <X509Certificate>]
[-SkipCertificateCheck]
[-SslProtocol <WebSslProtocol>]
[-Token <SecureString>]
[-UserAgent <String>]
[-DisableKeepAlive]
[-ConnectionTimeoutSeconds <Int32>]
[-OperationTimeoutSeconds <Int32>]
[-Headers <IDictionary>]
[-SkipHeaderValidation]
[-AllowInsecureRedirect]
[-MaximumRedirection <Int32>]
[-MaximumRetryCount <Int32>]
[-PreserveAuthorizationOnRedirect]
[-RetryIntervalSec <Int32>]
[-PreserveHttpMethodOnRedirect]
[-UnixSocket <UnixDomainSocketEndPoint>]
[-NoProxy]
[-Body <Object>]
[-Form <IDictionary>]
[-ContentType <String>]
[-TransferEncoding <String>]
[-InFile <String>]
[-OutFile <String>]
[-PassThru]
[-Resume]
[-SkipHttpErrorCheck]
[<CommonParameters>]
Description
A Invoke-RestMethod parancsmag HTTP- és HTTPS-kéréseket küld az Representational State Transfer (REST) webszolgáltatásoknak, amelyek gazdagon strukturált adatokat adnak vissza.
A PowerShell az adattípusnak megfelelően formázja a választ. RSS- vagy ATOM-hírcsatornák esetén a PowerShell az Elem vagy a Bejegyzés XML-csomópontot adja vissza. JavaScript Object Notation (JSON) vagy XML esetén a PowerShell átalakítja vagy deszerializálja a tartalmat [pscustomobject] objektumokká. A JSON-adatokban megjegyzések engedélyezettek.
Megjegyzés:
Amikor a REST-végpont több objektumot ad vissza, az objektumok tömbként lesznek fogadva. Ha a kimenetet Invoke-RestMethod egy másik parancsba továbbítja, az egyetlen [Object[]] objektumként lesz elküldve. A tömb tartalma nem lesz felsorolva a folyamatparancs következő lépéséhez.
Ezt a parancsmagot a Windows PowerShell 3.0-ban vezettük be.
A PowerShell 7.0-tól kezdve Invoke-RestMethod támogatja a környezeti változók által meghatározott proxykonfigurációt. Lásd a cikk NOTES szakaszát.
A PowerShell 7.4-től kezdődően a kérések karakterkódolása az ASCII helyett az UTF-8 lesz. Ha más kódolásra van szüksége, be kell állítania a charset attribútumot a Content-Type fejlécben.
Példák
1. példa: A PowerShell RSS-hírcsatornájának lekérése
Ez a példa a Invoke-RestMethod parancsmagot használja a PowerShell blog RSS-hírcsatornájának információinak lekéréséhez. A parancs a Format-Table parancsmaggal jeleníti meg a Cím értékeit, és pubDate tulajdonságait egy táblázatban lévő blogon.
Invoke-RestMethod -Uri https://blogs.msdn.microsoft.com/powershell/feed/ |
Format-Table -Property Title, pubDate
Title pubDate
----- -------
Join the PowerShell 10th Anniversary Celebration! Tue, 08 Nov 2016 23:00:04 +0000
DSC Resource Kit November 2016 Release Thu, 03 Nov 2016 00:19:07 +0000
PSScriptAnalyzer Community Call - Oct 18, 2016 Thu, 13 Oct 2016 17:52:35 +0000
New Home for In-Box DSC Resources Sat, 08 Oct 2016 07:13:10 +0000
New Social Features on Gallery Fri, 30 Sep 2016 23:04:34 +0000
PowerShellGet and PackageManagement in PowerShell Gallery and GitHub Thu, 29 Sep 2016 22:21:42 +0000
PowerShell Security at DerbyCon Wed, 28 Sep 2016 01:13:19 +0000
DSC Resource Kit September Release Thu, 22 Sep 2016 00:25:37 +0000
PowerShell DSC and implicit remoting broken in KB3176934 Tue, 23 Aug 2016 15:07:50 +0000
PowerShell on Linux and Open Source! Thu, 18 Aug 2016 15:32:02 +0000
2. példa: POST-kérelem futtatása
Ebben a példában egy felhasználó Invoke-RestMethod futtat egy POST-kérést a felhasználó szervezetének intranetes webhelyén.
$Cred = Get-Credential
$Url = "https://server.contoso.com:8089/services/search/jobs/export"
$Body = @{
search = "search index=_internal | reverse | table index,host,source,sourcetype,_raw"
output_mode = "csv"
earliest_time = "-2d@d"
latest_time = "-1d@d"
}
Invoke-RestMethod -Method 'Post' -Uri $url -Credential $Cred -Body $body -OutFile output.csv
A parancsmag hitelesítő adatokat kér, és ezen a helyen tárolja őket: $Cred.
$Url tartalmazza a REST-végpont URL-címét.
A $Body változó a keresési feltételeket írja le, a CSV-t adja meg kimeneti módként, és megadja a visszaadott adatok két nappal ezelőtt kezdődő és egy nappal ezelőtt befejezett időtartamát. A törzsváltozó azon paraméterek értékeit határozza meg, amelyek az adott REST API-ra vonatkoznak, amellyel Invoke-RestMethod kommunikál.
A Invoke-RestMethod parancs az összes változóval fut, és megadja az eredményül kapott CSV kimeneti fájl elérési útját és fájlnevét.
3. példa: Relációs hivatkozások követése
Egyes REST API-k RFC5988relációs hivatkozásokon keresztül támogatják a lapozást. Ahelyett, hogy elemezte volna a fejlécet a következő oldal URL-címének lekéréséhez, a parancsmag ezt elvégezheti Ön helyett. Ez a példa a PowerShell GitHub tárolóból tartalmazó problémák első két oldalát adja vissza.
$url = 'https://api.github.com/repos/powershell/powershell/issues'
Invoke-RestMethod $url -FollowRelLink -MaximumFollowRelLink 2
4. példa: Egyszerűsített többrészes/Form-Data beküldés
Egyes API-k fájlok és vegyes tartalmak feltöltéséhez multipart/form-data beküldéseket igényelnek. Ez a példa bemutatja, hogyan frissítheti egy felhasználó profilját.
$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-RestMethod -Uri $Uri -Method Post -Form $Form
A profilűrlaphoz a következő mezők szükségesek: firstName, lastName, email, avatar, birthdayés hobbies. Az API arra számít, hogy a felhasználói profil képe megjelenik a avatar mezőben. Az API több hobbies bejegyzést is elfogad, amelyet ugyanabban az űrlapon kell elküldeni.
A $Form szótár létrehozásakor a kulcsneveket űrlapmezők neveiként használják. Alapértelmezés szerint a HashTable értékei sztringekké alakulnak. Ha System.IO.FileInfo érték van jelen, a fájl tartalma el lesz küldve. Ha gyűjtemény, például tömb vagy lista van jelen, az űrlapmező többször is elküldve lesz.
A Get-Item kulcs avatar használatával a FileInfo objektumot értékként állítják be. Az eredmény az, hogy a rendszer a jdoe.png képadatait küldi el.
Ha egy listát ad meg a hobbies kulcsnak, a hobbies mező minden egyes listaelemnél egyszer szerepel a beküldésekben.
5. példa: Több fejléc átadása
Az API-k gyakran megkövetelik az átment fejléceket a hitelesítéshez vagy az ellenőrzéshez. Ez a példa bemutatja, hogyan adhat át több fejlécet egy hash-table-ból egy REST API-nak.
$headers = @{
'userId' = 'UserIDValue'
'token' = 'TokenValue'
}
Invoke-RestMethod -Uri $uri -Method Post -Headers $headers -Body $body
6. példa: A visszaadott elemek számbavétele a folyamatban
A GitHub több objektumot ad vissza egy tömbhöz. Ha a kimenetet egy másik parancsra továbbítja, az egyetlen [Object[]]objektumként lesz elküldve.
Ha az objektumokat be szeretné sorolni a folyamatba, irányítsa az eredményeket a Write-Output-hoz, vagy zárójelbe helyezze a parancsot. Az alábbi példa a GitHub által visszaadott objektumok számát számolja. Ezután megszámolja a csővezetékhez enumerált objektumok számát.
$uri = 'https://api.github.com/repos/microsoftdocs/powershell-docs/issues'
$x = 0
Invoke-RestMethod -Uri $uri | ForEach-Object { $x++ }
$x
1
$x = 0
(Invoke-RestMethod -Uri $uri) | ForEach-Object { $x++ }
$x
30
$x = 0
Invoke-RestMethod -Uri $uri | Write-Output | ForEach-Object { $x++ }
$x
30
7. példa: A fejléc érvényesítésének kihagyása
Alapértelmezés szerint a Invoke-RestMethod parancsmag ellenőrzi a szabvány által definiált értékformátummal rendelkező jól ismert fejlécek értékeit. Az alábbi példa bemutatja, hogy ez az ellenőrzés hogyan okozhat hibát, és hogyan használhatja a SkipHeaderValidation paramétert az érvénytelenül formázott értékeket toleráló végpontok értékeinek ellenőrzésének elkerülése érdekében.
$Uri = 'https://httpbin.org/headers'
$InvalidHeaders = @{
'If-Match' = '12345'
}
Invoke-RestMethod -Uri $Uri -Headers $InvalidHeaders
Invoke-RestMethod -Uri $Uri -Headers $InvalidHeaders -SkipHeaderValidation |
Format-List
Invoke-RestMethod: The format of value '12345' is invalid.
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=Root=1-62f150a6-27754fd4226f31b43a3d2874}
httpbin.org egy szolgáltatás, amely információkat ad vissza a webes kérelmekről és a hibaelhárításra adott válaszokról. A $Uri változó a szolgáltatás /headers végponthoz van rendelve, amely egy kérés fejléceit adja vissza a válasz tartalmaként.
A If-Match kérelemfejléc RFC-7232 3.1 szakaszában van definiálva, és a fejléc értékét a környező idézőjelekkel kell definiálni. A $InvalidHeaders változó olyan kivonattáblát kap, amelyben a If-Match értéke érvénytelen, mert 12345 ként van definiálva "12345"helyett.
Az érvénytelen fejlécekkel rendelkező Invoke-RestMethod hívása hibaüzenetet ad vissza, amely szerint a formázott érték érvénytelen. A rendszer nem küldi el a kérelmet a végpontnak.
A Invoke-RestMethod hívása a SkipHeaderValidation paraméterrel figyelmen kívül hagyja az érvényesítési hibát, és elküldi a kérést a végponthoz. Mivel a végpont tolerálja a nem megfelelő fejlécértékeket, a parancsmag hiba nélkül adja vissza a válaszobjektumot.
8. példa: Kérés küldése HTTP 2.0 használatával
Ez a példa a Http 2.0 protokoll használatával lekérdezi a GitHub-problémát.
$uri = 'https://api.github.com/repos/microsoftdocs/powershell-docs/issues'
Invoke-RestMethod -Uri $uri -HttpVersion 2.0 -SkipCertificateCheck
9. példa: Kérelem küldése Unix szoftvercsatornás alkalmazásnak
Egyes alkalmazások, például a Docker, egy Unix-szoftvercsatornát tesznek elérhetővé a kommunikációhoz. Ez a példa a Docker API használatával lekérdezi a Docker-rendszerképek listáját. A parancsmag a Unix-szoftvercsatornával csatlakozik a Docker-démonhoz.
Invoke-RestMethod -Uri "http://localhost/v1.40/images/json/" -UnixSocket "/var/run/docker.sock"
Paraméterek
-AllowInsecureRedirect
Engedélyezi a HTTPS-ről a HTTP-be való átirányítást. Alapértelmezés szerint a HTTPS-ről HTTP-ra átirányított kérések hibát eredményeznek, és a kérés megszakad, hogy ne lehessen véletlenül egyszerű szövegben kommunikálni titkosítatlan kapcsolatokon keresztül. Ha saját kockázatára szeretné felülbírálni ezt a viselkedést, használja az AllowInsecureRedirect paramétert.
Ez a paraméter a PowerShell 7.4-ben lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-AllowUnencryptedAuthentication
Lehetővé teszi a hitelesítő adatok és titkos kódok titkosítás nélküli kapcsolatokon keresztüli küldését. Alapértelmezés szerint, ha a Hitelesítő adatok vagy bármely hitelesítési lehetőség olyan Uri-vel van megadva, amely nem kezdődik https://-tal, hibát eredményez, és a kérés megszakad, hogy elkerüljük, hogy a titkos kulcsok véletlenül egyszerű szövegként kommunikáljanak titkosítatlan kapcsolatokon keresztül. Ha saját kockázatára szeretné felülbírálni ezt a viselkedést, adja meg az AllowUnencryptedAuthentication paramétert.
Figyelmeztetés
A paraméter használata nem biztonságos, és nem ajánlott. Ez csak az örökölt rendszerekkel való kompatibilitáshoz érhető el, amelyek nem tudnak titkosított kapcsolatokat biztosítani. Saját felelősségre használható.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Authentication
Megadja a kérelemhez használandó explicit hitelesítési típust. Az alapértelmezett érték Nincs. A Hitelesítési paraméter nem használható a UseDefaultCredentials paraméterrel.
Elérhető hitelesítési beállítások:
-
None: Ez az alapértelmezett beállítás, ha nincs megadva hitelesítési. A rendszer nem használ explicit hitelesítést. -
Basic: Szükséges a(z) hitelesítő. A hitelesítő adatok az RFC 7617 Egyszerű hitelesítésAuthorization: Basicfejlécénekbase64(user:password)formátumban történő küldéséhez használhatók. -
Bearer: A Token paramétert igényli. Egy RFC 6750-Authorization: Bearerfejlécet küld a megadott jogkivonattal. -
OAuth: A Token paramétert igényli. Egy RFC 6750-Authorization: Bearerfejlécet küld a megadott jogkivonattal.
Egy hitelesítési megadása felülbírál bármely Authorization fejlécet, amelyet megadtak a Fejlécek-nek, vagy amely benne van a WebSession-ban.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | WebAuthenticationType |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | None, Basic, Bearer, OAuth |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Body
A kérelem törzsét adja meg. A törzs a fejléceket követő kérés tartalma.
A törzsértéket a Invoke-RestMethodrészére is át lehet irányítani.
A Törzs paraméterrel megadhatja a lekérdezési paraméterek listáját, vagy megadhatja a kérés tartalmát. Lekérdezési paraméterek esetén a parancsmag a System.Net.WebUtility.UrlEncode metódust használja a kulcs-érték párok kódolásához. További információ az URL-címek sztringjeinek kódolásáról: urlEncode() metódus hivatkozási.
Ha a bemenet POST kérés, és a törzs egy karakterlánc, az első egyenlőségjel (=) bal oldalán lévő érték kulcsként van beállítva az űrlapadatokban, a fennmaradó szöveg pedig értékként van beállítva. Több kulcs megadásához használjon egy IDictionary objektumot, például hash táblát a Törzsszámára.
Ha a bemenet egy GET kérés, és a törzs egy IDictionary (ami általában egy kivonattáblázat), a törzs az URI-hoz lekérdezési paraméterekként kerül hozzáadásra. Más kéréstípusok (például PATCH) esetén a törzs a kérés törzsének értékeként van beállítva szabványos name=value formátumban az URL-kódolású értékekkel.
Ha a bemenet egy System.Xml.XmlNode objektum, és az XML-deklaráció egy kódolást határoz meg, akkor a rendszer a kérelemben szereplő adatok kódolását használja, kivéve, ha a ContentType paraméter felülírja.
Ha a törzs egy űrlap, vagy egy másik Invoke-WebRequest hívás kimenete, a PowerShell a kérelem tartalmát az űrlapmezőkre állítja.
A Törzs paraméter egy System.Net.Http.MultipartFormDataContent objektumot is elfogad, amely megkönnyíti multipart/form-data kéréseket. Ha a Törzsparaméterhez MultipartFormDataContent objektum van megadva, akkor a ContentType, Fejlécekvagy WebSession paraméterekhez megadott fejlécadatok felülírásra kerülnek a MultipartFormDataContent objektum tartalomfejlécei által. Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | Object |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Certificate
Megadja a biztonságos webkérelemhez használt ügyféltanúsítványt. Adjon meg egy változót, amely tartalmaz egy tanúsítványt, vagy egy parancsot vagy kifejezést, amely lekéri a tanúsítványt.
Tanúsítvány kereséséhez használja a Get-PfxCertificate, vagy használja a Get-ChildItem parancsmagot a Tanúsítvány (Cert:) meghajtón. Ha a tanúsítvány érvénytelen, vagy nem rendelkezik megfelelő jogosultságtal, a parancs meghiúsul.
Paramétertulajdonságok
| Típus: | X509Certificate |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CertificateThumbprint
Egy olyan felhasználói fiók digitális nyilvános kulcsú tanúsítványát (X509) adja meg, amely jogosult a kérés elküldésére. Adja meg a tanúsítvány ujjlenyomatát.
A tanúsítványok az ügyféltanúsítvány-alapú hitelesítésben használatosak. A tanúsítványok csak helyi felhasználói fiókokhoz rendelhetők le, tartományi fiókokhoz nem.
A tanúsítvány ujjlenyomatának megtekintéséhez a Get-Item vagy Get-ChildItem paranccsal keresse meg a tanúsítványt a Cert:\CurrentUser\My.
Megjegyzés:
Ez a funkció jelenleg csak Windows operációsrendszer-platformokon támogatott.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ConnectionTimeoutSeconds
Megadja, hogy mennyi ideig lehet függőben a kérelem, mielőtt túllépi az időkorlátot. Adjon meg egy értéket másodpercek alatt. Az alapértelmezett érték, 0, meghatározatlan időtartamot ad meg.
A DNS-lekérdezések visszatérése vagy időtúllépése akár 15 másodpercet is igénybe vehet. Ha a kérés olyan gazdagépnevet tartalmaz, amely megoldásra szorul, és a ConnectionTimeoutSeconds értéke nullánál nagyobb, de 15 másodpercnél rövidebb, 15 másodpercet vagy többet is igénybe vehet, mielőtt egy WebException dobódik ki, és a kérés túllépi az időkorlátot.
Ez a paraméter felváltotta a TimeoutSec paramétert a PowerShell 7.4-ben. Használhatja a TimeoutSec kifejezést a ConnectionTimeoutSecondshelyett, aliasaként.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | 0 |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | TimeoutSec |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ContentType
Megadja a webes kérelem tartalomtípusát.
Ha ContentType értéke tartalmazza a kódolási formátumot (charset), a parancsmag ezt a formátumot használja a webes kérelem törzsének kódolásához. Ha a ContentType nem ad meg kódolási formátumot, a rendszer ehelyett az alapértelmezett kódolási formátumot használja. A kódolási formátummal rendelkező ContentType például text/plain; charset=iso-8859-5, amely a latin/cirill betűs betűkészlet et adja meg.
Ha kihagyja a paramétert, a tartalomtípus a használt HTTP-módszer alapján eltérő lehet:
- POST metódus esetén a tartalomtípus
application/x-www-form-urlencoded - PUT metódus esetén a tartalomtípus
application/json - Más metódusok esetén a tartalomtípus nincs megadva a kérelemben
Ha a InFile paramétert használja egy fájl feltöltéséhez, állítsa be a tartalom típusát.
A típusnak általában application/octet-streamkell lennie. A tartalomtípust azonban a végpont követelményei alapján kell beállítania.
ContentType felülbírálva van, ha a törzsMultipartFormDataContent objektum.
A PowerShell 7.4-től kezdve, ha ezt a paramétert és a Fejlécek paramétert is használja a Content-Type fejléc meghatározásához, akkor a ContentType paraméterben megadott érték lesz használva.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Credential
Olyan felhasználói fiókot ad meg, amely rendelkezik a kérés elküldéséhez szükséges engedéllyel. Az alapértelmezett az aktuális felhasználó.
Írjon be egy felhasználónevet, például User01 vagy Domain01\User01, vagy adjon meg egy PSCredential objektumot, amelyet a Get-Credential parancsmag generál.
A Hitelesítő adat önállóan vagy bizonyos Hitelesítési paraméterbeállításokkal együtt is használható. Ha egyedül használja, csak akkor adja meg a hitelesítő adatokat a távoli kiszolgálónak, ha a távoli kiszolgáló hitelesítési kérést küld. Ha hitelesítési beállításokkal használják, a rendszer explicit módon küldi el a hitelesítő adatokat.
A hitelesítő adatokat egy PSCredential objektum tárolja, a jelszó pedig SecureString.
Megjegyzés:
További információért a SecureString adatvédelemről lásd: Mennyire biztonságos a SecureString?.
Paramétertulajdonságok
| Típus: | PSCredential |
| Alapértelmezett érték: | Current user |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CustomMethod
A webes kérelemhez használt egyéni metódust adja meg. Ez használható, ha a végpont által igényelt kérési metódus nem elérhető a metódus-ben. Metódus és CustomMethod nem használható együtt.
Példa:
Invoke-RestMethod -Uri 'https://api.contoso.com/widget/' -CustomMethod 'TEST'
Ez TEST HTTP-kérést küld az API-nak.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | CM |
Paraméterkészletek
CustomMethod
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CustomMethodNoProxy
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-DisableKeepAlive
A HTTP-fejlécben lévő KeepAlive értékét False (Hamis) értékre állítja. Alapértelmezés szerint KeepAlive igaz. KeepAlive állandó kapcsolatot létesít a kiszolgálóval a további kérések megkönnyítése érdekében.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-FollowRelLink
Azt jelzi, hogy a parancsmagnak relációs hivatkozásokat kell követnie.
Egyes REST API-k RFC5988relációs hivatkozásokon keresztül támogatják a lapozást. Ahelyett, hogy elemezte volna a fejlécet a következő oldal URL-címének lekéréséhez, a parancsmag ezt elvégezheti Ön helyett. A relációs hivatkozások követésének hányszoros beállításához használja a MaximumFollowRelLink paramétert.
A kapcsoló használatakor a parancsmag eredményoldalak gyűjteményét adja vissza. Az eredmények oldalai több találatelemet is tartalmazhatnak.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | FL |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Form
Egy szótárat multipart/form-data beküldéssé alakít át.
Űrlap nem alkalmazható a Törzsesetén.
A ContentType figyelmen kívül van hagyva.
A szótár kulcsai az űrlapmezők neveként használatosak. Alapértelmezés szerint az űrlapértékek sztringértékekké alakulnak.
Ha az érték egy System.IO.FileInfo objektum, akkor a bináris fájl tartalma el lesz küldve. A fájl neve filename-ként kerül beküldésre. A MIME típusa application/octet-stream.
Get-Item a System.IO.FileInfo objektum ellátásának egyszerűsítésére használható.
$Form = @{
resume = Get-Item 'C:\Users\jdoe\Documents\John Doe.pdf'
}
Ha az érték gyűjteménytípus, például tömb vagy lista, az űrlapmező többször is elküldve lesz. A lista értékei alapértelmezés szerint sztringekként vannak kezelve. Ha az érték egy System.IO.FileInfo objektum, akkor a bináris fájl tartalma el lesz küldve. Beágyazott gyűjtemények nem támogatottak.
$Form = @{
tags = 'Vacation', 'Italy', '2017'
pictures = Get-ChildItem 'C:\Users\jdoe\Pictures\2017-Italy\'
}
A fenti példában a tags mező háromszor van megadva az űrlapon, egyszer az egyes értékekhez: Vacation, Italyés 2017. A pictures mező a 2017-Italy mappában lévő összes fájlhoz egyszer lesz elküldve. A mappában lévő fájlok bináris tartalma lesz elküldve értékekként.
Ez a funkció a PowerShell 6.1.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | IDictionary |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Headers
Meghatározza a webes kérelem fejléceit. Írjon be egy kivonattáblát vagy szótárt.
A tartalommal kapcsolatos fejlécek, mint például a Content-Type, felülbírálódnak, amikor egy MultipartFormDataContent objektum van megadva a Törzsszámára.
A PowerShell 7.4-től kezdődően, ha ezt a paramétert használja a Content-Type fejléc meghatározásához, és ContentType paramétert használja, a ContentType paraméterben megadott érték lesz használva.
Paramétertulajdonságok
| Típus: | IDictionary |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-HttpVersion
A kérelemhez használt HTTP-verziót adja meg. Az alapértelmezett érték a 1.1.
Az érvényes értékek a következők:
- 1.0
- 1.1
- 2.0
- 3.0
Paramétertulajdonságok
| Típus: | Version |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-InFile
Lekéri a webes kérelem törzsének tartalmát egy fájlból. Adjon meg egy elérési utat és egy fájlnevet. Ha kihagyja az elérési utat, az alapértelmezett hely az aktuális hely.
A kérés tartalomtípusát is be kell állítania. Egy fájl feltöltéséhez például meg kell adnia a tartalom típusát. A típusnak általában application/octet-streamkell lennie. A tartalomtípust azonban a végpont követelményei alapján kell beállítania.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-MaximumFollowRelLink
Megadja, hogy hányszor kell követni a relációs hivatkozásokat, ha FollowRelLink használ. Kisebb értékre lehet szükség, ha a REST API-t túl sok kérés miatt korlátozzák. Az alapértelmezett érték a [int32]::MaxValue. A 0 (nulla) érték megakadályozza a relációs hivatkozások követését.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | Int32.MaxValue |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | felügyeleti licenc |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-MaximumRedirection
Megadja, hogy a PowerShell hányszor irányítja át a kapcsolatot egy másodlagos egységes erőforrás-azonosítóhoz (URI), mielőtt a kapcsolat meghiúsul. Az alapértelmezett érték 5. A 0 (nulla) érték megakadályozza az összes átirányítást.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-MaximumRetryCount
Megadja, hogy a PowerShell hányszor próbálkozik újra egy kapcsolattal, ha 400 és 599 közötti hibakód érkezik, beleértve vagy 304-et. Lásd még RetryIntervalSec paramétert az újrapróbálkozási időköz megadásához.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Method
A webes kérelemhez használt metódust adja meg. A paraméter elfogadható értékei a következők:
DefaultDeleteGetHeadMergeOptionsPatchPostPutTrace
A CustomMethod paraméter a fent nem felsorolt kérelemmetódusokhoz használható.
Paramétertulajdonságok
| Típus: | WebRequestMethod |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | Default, Get, Head, Post, Put, Delete, Trace, Options, Merge, Patch |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StandardMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
StandardMethodNoProxy
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-NoProxy
Azt jelzi, hogy a parancsmag nem használ proxyt a cél eléréséhez. Ezzel megkerülheti az internetes beállításokban konfigurált vagy a környezetben megadott proxyt.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StandardMethodNoProxy
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CustomMethodNoProxy
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-OperationTimeoutSeconds
Ez az időtúllépés a streamen belüli adatolvasásokra vonatkozik, nem pedig a stream teljes idejére. Az alapértelmezett érték (0) meghatározatlan időtúllépést ad meg.
Az érték 30 másodpercre állítása azt jelenti, hogy a streamben lévő adatok közötti 30 másodpercnél hosszabb késleltetés megszakítja a kérést. A letöltéshez több percig tartó nagy fájl csak akkor fejeződik be, ha a stream 30 másodpercnél hosszabb ideig nem áll le.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-OutFile
Alapértelmezés szerint Invoke-RestMethod visszaadja az eredményeket a feldolgozási sornak. Ha a OutFile paramétert használja, az eredmények a megadott fájlba kerülnek, és nem kerülnek vissza a folyamatba. Adjon meg egy elérési utat és egy fájlnevet. Ha egy fájlba és a folyamatba szeretné elküldeni az eredményeket, adja hozzá a PassThru paramétert.
Ha kihagyja az elérési utat, az alapértelmezett hely az aktuális hely. A név szó szerinti elérési útként lesz kezelve.
A zárójeleket ([]) tartalmazó neveket egy idézőjelbe (') kell befoglalni.
A PowerShell 7.4-től kezdve megadhatja a mappa elérési útját a fájlnév nélkül. Ha így tesz, a parancs a feloldott URI utolsó szegmensének fájlnevét használja az átirányítások után. Ha megadja a OutFilemappa elérési útját, nem használhatja a Önéletrajz paramétert.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-PassThru
Ez a paraméter csak akkor érvényes, ha az OutFile paramétert is használja a parancs. A szándék az, hogy az eredményeket a fájlba és a csővezetékbe írja.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | No output |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-PreserveAuthorizationOnRedirect
Azt jelzi, hogy a parancsmagnak meg kell őriznie a Authorization fejlécet, ha jelen van, az átirányítások között.
Alapértelmezés szerint a parancsmag eltávolítja a Authorization fejlécet az átirányítás előtt. A paraméter megadása letiltja ezt a logikát azokban az esetekben, amikor a fejlécet el kell küldeni az átirányítási helyre.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-PreserveHttpMethodOnRedirect
Azt jelzi, hogy a parancsmagnak meg kell őriznie a kérés metódusát az átirányítások között.
Alapértelmezés szerint a parancsmag GET-ra módosítja a metódust átirányításkor. A paraméter megadása letiltja ezt a logikát, így biztosítható, hogy a kívánt metódus átirányítással is használható legyen.
Ez a funkció a PowerShell 7.4-ben lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Proxy
Proxykiszolgálót használ a kéréshez, ahelyett, hogy közvetlenül csatlakozik az internetes erőforráshoz. Adja meg egy hálózati proxykiszolgáló egységes erőforrás-azonosítóját (URI).
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | Uri |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StandardMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CustomMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ProxyCredential
Olyan felhasználói fiókot ad meg, amely jogosult a Proxy paraméter által megadott proxykiszolgáló használatára. Az alapértelmezett az aktuális felhasználó.
Írjon be egy felhasználónevet (például "User01" vagy "Domain01\User01"), vagy írjon be egy PSCredential objektumot, például a Get-Credential parancsmag által létrehozott objektumot.
Ez a paraméter csak akkor érvényes, ha a parancsban a Proxy paramétert is használja. Nem használhatja a ProxyCredential és ProxyUseDefaultCredentials paramétereket ugyanabban a parancsban.
Paramétertulajdonságok
| Típus: | PSCredential |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StandardMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CustomMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ProxyUseDefaultCredentials
Az aktuális felhasználó hitelesítő adataival fér hozzá a Proxy paraméter által megadott proxykiszolgálóhoz.
Ez a paraméter csak akkor érvényes, ha a parancsban a Proxy paramétert is használja. Nem használhatja a ProxyCredential és ProxyUseDefaultCredentials paramétereket ugyanabban a parancsban.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StandardMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CustomMethod
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ResponseHeadersVariable
Létrehoz egy válaszfejlécszótárat tartalmazó változót. Adjon meg egy változónevet a dollárjel ($) szimbólum nélkül. A szótár kulcsai tartalmazzák a webkiszolgáló által visszaadott válaszfejléc mezőnevét és értékeit.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | RHV |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Resume
Minden tőle telhetőt megtesz egy részleges fájl letöltésének folytatására. A Önéletrajz paraméterhez az OutFile paraméter szükséges.
Önéletrajz csak a helyi fájl és a távoli fájl méretén működik, és nem végez más ellenőrzést arról, hogy a helyi fájl és a távoli fájl azonos-e.
Ha a helyi fájlméret kisebb, mint a távoli fájlméret, akkor a parancsmag megpróbálja folytatni a fájl letöltését, és hozzáfűzi a fennmaradó bájtokat a fájl végéhez.
Ha a helyi fájlméret megegyezik a távoli fájlméretével, akkor nem történik művelet, és a parancsmag feltételezi, hogy a letöltés már befejeződött.
Ha a helyi fájl mérete nagyobb, mint a távoli fájlméret, akkor a rendszer felülírja a helyi fájlt, és a teljes távoli fájlt újra letölti. Ez a viselkedés ugyanaz, mint OutFile használata Önéletrajznélkül.
Ha a távoli kiszolgáló nem támogatja a letöltés folytatását, a rendszer felülírja a helyi fájlt, és a teljes távoli fájlt újra letölti. Ez a viselkedés ugyanaz, mint OutFile használata Önéletrajznélkül.
Ha a helyi fájl nem létezik, a rendszer létrehozza a helyi fájlt, és letölti a teljes távoli fájlt. Ez a viselkedés ugyanaz, mint OutFile használata Önéletrajznélkül.
Ez a funkció a PowerShell 6.1.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-RetryIntervalSec
Megadja a kapcsolat újrapróbálkozásai közötti időközt, ha 400 és 599 közötti hibakód érkezik, beleértve vagy 304-et. Az értéknek 1 és [int]::MaxValueközött kell lennie.
Ha a hibakód 429, és a válasz tartalmazza az Újrapróbálkozási tulajdonságot a fejléceiben, a parancsmag ezt az értéket használja az újrapróbálkozási időközhöz, még akkor is, ha ez a paraméter meg van adva.
Az újrapróbálkozések számának megadásához tekintse meg a MaximumRetryCount paramétert is.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | 5 |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-SessionVariable
Létrehoz egy változót, amely tartalmazza a webes kérelem munkamenetét. Adjon meg egy változónevet a dollárjel ($) szimbólum nélkül.
Amikor megad egy munkamenet-változót, Invoke-RestMethod létrehoz egy webkérelem-munkamenet-objektumot, és hozzárendeli azt egy, a PowerShell-munkamenetben megadott névvel rendelkező változóhoz. A változót a parancs befejeződése után használhatja a munkamenetben.
A PowerShell 7.4 előtt a webkérések munkamenete nem tartós kapcsolat. Ez egy objektum, amely információkat tartalmaz a kapcsolatról és a kérésről, beleértve a cookie-kat, a hitelesítő adatokat, a maximális átirányítási értéket és a felhasználói ügynök sztringjét. Ezzel megoszthatja az állapotot és az adatokat a webes kérések között.
A PowerShell 7.4-től kezdve a webes kérelem munkamenete állandó, amíg a munkamenet tulajdonságait nem bírálja felül egy későbbi kérés. Ha így van, a parancsmag újra létrehozza a munkamenetet az új értékekkel. Az állandó munkamenetek csökkentik az ismétlődő kérések többletterhelését, így sokkal gyorsabbak lesznek.
A webkérelem-munkamenet későbbi webes kérelmekben való használatához adja meg a munkamenet változóját a WebSession paraméter értékében. A PowerShell a webkérelem munkamenet-objektumában lévő adatokat használja az új kapcsolat létrehozásakor. Ha felül szeretne bírálni egy értéket a webes kérelem munkamenetében, használjon egy parancsmagparamétert, például UserAgent vagy Hitelesítő adatok. A paraméterértékek elsőbbséget élveznek a webes kérelem munkamenetében lévő értékekkel szemben.
Nem használhatja a SessionVariable és WebSession paramétereket ugyanabban a parancsban.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | SV |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-SkipCertificateCheck
Kihagyja a tanúsítványérvényesítési ellenőrzéseket, amelyek tartalmazzák az összes érvényesítést, például a lejáratot, a visszavonást, a megbízható legfelső szintű hitelesítésszolgáltatót stb.
Figyelmeztetés
A paraméter használata nem biztonságos, és nem ajánlott. Ez a kapcsoló csak az ismert gazdagépekkel szemben használható, tesztelési célból önaláírt tanúsítvány használatával. Saját felelősségre használható.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-SkipHeaderValidation
Azt jelzi, hogy a parancsmagnak érvényesítés nélkül kell fejléceket hozzáadnia a kérelemhez.
Ezt a kapcsolót olyan webhelyekhez kell használni, amelyek olyan fejlécértékeket igényelnek, amelyek nem felelnek meg a szabványoknak. A kapcsoló bekapcsolása letiltja az érvényesítést, így az érték ellenőrzés nélkül kerül továbbításra. Ha meg van adva, a rendszer minden fejlécet érvényesítés nélkül ad hozzá.
Ez a kapcsoló letiltja a ContentType, Fejlécekés UserAgent paramétereknek átadott értékek érvényesítését.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-SkipHttpErrorCheck
Ez a paraméter miatt a parancsmag figyelmen kívül hagyja a HTTP-hibaállapotokat, és folytatja a válaszok feldolgozását. A hibaválaszok ugyanúgy lesznek megírva a folyamatba, mintha sikeresek lennének.
Ez a paraméter a PowerShell 7-ben lett bevezetve.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-SslProtocol
Beállítja a webes kéréshez megengedett SSL-/TLS-protokollokat. Alapértelmezés szerint a rendszer által támogatott SSL-/TLS-protokollok engedélyezettek. SslProtocol lehetővé teszi az adott protokollokra való korlátozást megfelelőségi célokból.
Ezek az értékek jelölőalapú számbavételként vannak definiálva. Több érték kombinálásával több jelölőt is beállíthat ezzel a paraméterrel. Az értékek átadhatók az SslProtocol paraméternek értéktömbként vagy az értékek vesszővel elválasztott sztringjeként. A parancsmag egy bináris "VAGY" művelettel kombinálja az értékeket. Az értékek tömbként való átadása a legegyszerűbb lehetőség, és lehetővé teszi a tabulátorkiegészítés használatát is az értékeken. Előfordulhat, hogy nem tud több értéket megadni minden platformon.
Ez a funkció a PowerShell 6.0.0-s verzióban lett hozzáadva. A Tls13 támogatása a PowerShell 7.1-ben lett hozzáadva.
Paramétertulajdonságok
| Típus: | WebSslProtocol |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | Default, Tls, Tls11, Tls12, Tls13 |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-StatusCodeVariable
Létrehoz egy változót, amely a kérelem HTTP-állapotkódjának eredményét tartalmazza. Adjon meg egy változónevet a dollárjel ($) szimbólum nélkül.
A paraméter képes azonosítani a sikeres üzeneteket vagy a sikertelen üzeneteket, ha a SkipHttpErrorCheck paraméterrel használja.
Adja meg a paraméter változónevét sztringként, például -StatusCodeVariable "scv".
Ez a paraméter a PowerShell 7-ben lett bevezetve.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Token
A kérésben belefoglalandó OAuth vagy Bearer jogkivonat. token szükséges bizonyos hitelesítési beállításokhoz. Önállóan nem használható.
token egy SecureString-t vesz igénybe, amely tartalmazza a jogkivonatot. A token megadásához kézzel használja a következőt:
Invoke-RestMethod -Uri $uri -Authentication OAuth -Token (Read-Host -AsSecureString)
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | SecureString |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-TransferEncoding
Megadja az átvitelkódoló HTTP-válaszfejléc értékét. A paraméter elfogadható értékei a következők:
- Felaprított
- Tömörít
- Leereszt
- GZip
- Személyazonosság
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | chunked, compress, deflate, gzip, identity |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UnixSocket
Megadja annak a Unix-szoftvercsatornának a nevét, amelyhez csatlakozni szeretne. Ez a paraméter a Unix-alapú rendszereken és a Windows 1803-es és újabb verzióiban támogatott. További információ a Unix socketek Windows támogatásáról a Windows/WSL Interop with AF_UNIX blogbejegyzésben található.
Ez a paraméter a PowerShell 7.4-ben lett hozzáadva.
Paramétertulajdonságok
| Típus: | UnixDomainSocketEndPoint |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Uri
Annak az internetes erőforrásnak az egységes erőforrás-azonosítóját (URI) adja meg, amelyre a webes kérést küldi. Ez a paraméter támogatja a HTTP, HTTPS, FTP és FILE értékeket.
Ez a paraméter kötelező. A paraméter neve (Uri) megadása nem kötelező.
Paramétertulajdonságok
| Típus: | Uri |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UseBasicParsing
Ez a paraméter elavult. A PowerShell 6.0.0-tól kezdve minden webes kérés csak alapszintű elemzést használ. Ez a paraméter csak a visszamenőleges kompatibilitás érdekében érhető el. Használat esetén nincs hatással a parancsmag működésére.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UseDefaultCredentials
Azt jelzi, hogy a parancsmag az aktuális felhasználó hitelesítő adatait használja a webes kérés elküldéséhez. Ez nem használható együtt a hitelesítéssel vagy a hitelesítő adatokkal, és nem biztos, hogy minden platformon támogatott.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UserAgent
Meghatároz egy user agent karakterláncot a webes kéréshez.
Az alapértelmezett felhasználói ügynök hasonló az Mozilla/5.0 (Windows NT 10.0; Microsoft Windows 10.0.15063; en-US) PowerShell/6.0.0, és az egyes operációs rendszerek és platformok esetében kisebb eltéréseket mutat.
Ha a legtöbb internetböngésző által használt szabványos felhasználói ügynök sztringgel szeretne tesztelni egy webhelyet, használja a PSUserAgent osztály tulajdonságait, például Chrome, Firefox, InternetExplorer, Opera és Safari.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-WebSession
Webkérelem-munkamenetet határoz meg. Adja meg a változó nevét, beleértve a dollárjelet ($).
Ha felül szeretne bírálni egy értéket a webes kérelem munkamenetében, használjon egy parancsmagparamétert, például UserAgent vagy Hitelesítő adatok. A paraméterértékek elsőbbséget élveznek a webes kérelem munkamenetében lévő értékekkel szemben. A tartalommal kapcsolatos fejlécek, például a Content-Type, felülíródnak, ha egy MultipartFormDataContent objektumot adnak meg a törzshöz.
A távoli munkamenettől eltérően a webkérés munkamenete nem egy állandó kapcsolat. Ez egy objektum, amely információkat tartalmaz a kapcsolatról és a kérésről, beleértve a cookie-kat, a hitelesítő adatokat, a maximális átirányítási értéket és a felhasználói ügynök sztringjét. Ezzel megoszthatja az állapotot és az adatokat a webes kérések között.
Webkérelem-munkamenet létrehozásához írjon be egy változónevet dollárjel nélkül a SessionVariable paraméter értékébe egy Invoke-RestMethod parancsban.
Invoke-RestMethod létrehozza a munkamenetet, és megmenti a változóban. A következő parancsokban használja a változót a WebSession paraméter értékeként.
Nem használhatja a SessionVariable és WebSession paramétereket ugyanabban a parancsban.
Paramétertulajdonságok
| Típus: | WebRequestSession |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
Object
Erre a parancsmagra egy webes kérés törzsét is becsúszthatja.
Kimenetek
Int64
Amikor a kérelem egész számot ad vissza, ez a parancsmag visszaadja az egész számot.
String
Amikor a kérés egy sztringet ad vissza, ez a parancsmag visszaadja ezt a sztringet.
XmlDocument
Amikor a kérelem érvényes XML-t ad vissza, ez a parancsmag XmlDocumentformájában adja vissza.
PSObject
Amikor a kérelem JSON-sztringeket ad vissza, ez a parancsmag egy PSObject ad vissza, amely az adatokat jelöli.
Jegyzetek
A PowerShell a következő aliasokat tartalmazza Invoke-RestMethod:
- Minden platform:
irm
Előfordulhat, hogy egyes funkciók nem minden platformon érhetők el.
A .NET Core 3.1 változásai miatt a PowerShell 7.0 és újabb verziói a HttpClient.DefaultProxy tulajdonságot használják a proxykonfiguráció meghatározásához.
A tulajdonság értéke a platformtól függően eltérő:
- Windowsesetén: Beolvassa a proxykonfigurációt a környezeti változókból, vagy ha nincsenek definiálva, a felhasználó proxybeállításaiból.
- MacOSesetén: Beolvassa a proxykonfigurációt a környezeti változókból, vagy ha ezek nincsenek definiálva, a rendszer proxybeállításaiból.
- Linux-esetén: Beolvassa a proxykonfigurációt a környezeti változókból, vagy ha ezek nincsenek meghatározva, ez a tulajdonság inicializál egy nem konfigurált példányt, amely minden címet áthalad.
A Windows- és Unix-alapú platformok DefaultProxy inicializálásához használt környezeti változók a következők:
-
HTTP_PROXY: a HTTP-kérelmekben használt proxykiszolgáló állomásneve vagy IP-címe. -
HTTPS_PROXY: a HTTPS-kérelmekben használt proxykiszolgáló állomásneve vagy IP-címe. -
ALL_PROXY: a HTTP- és HTTPS-kérelmekben használt proxykiszolgáló állomásneve vagy IP-címe, ha nincs definiálvaHTTP_PROXYvagyHTTPS_PROXY. -
NO_PROXY: azoknak a gazdagépneveknek a vesszővel tagolt listája, amelyeket ki kell zárni a proxyzásból.
A PowerShell 7.4 támogatja a Brotli tömörítési algoritmust.