New-WebServiceProxy
Hiermee maakt u een webserviceproxyobject waarmee u de webservice in Windows PowerShell kunt gebruiken en beheren.
Syntaxis
New-WebServiceProxy
[-Uri] <Uri>
[[-Class] <String>]
[[-Namespace] <String>]
[<CommonParameters>]
New-WebServiceProxy
[-Uri] <Uri>
[[-Class] <String>]
[[-Namespace] <String>]
[-Credential <PSCredential>]
[<CommonParameters>]
New-WebServiceProxy
[-Uri] <Uri>
[[-Class] <String>]
[[-Namespace] <String>]
[-UseDefaultCredential]
[<CommonParameters>]
Description
Met de cmdlet New-WebServiceProxy kunt u een webservice gebruiken in Windows PowerShell. De cmdlet maakt verbinding met een webservice en maakt een webserviceproxyobject in Windows PowerShell. U kunt het proxyobject gebruiken om de webservice te beheren.
Een webservice is een XML-programma dat gegevens uitwisselt via een netwerk, met name via internet. Microsoft .NET Framework biedt webserviceproxyobjecten die de webservice vertegenwoordigen als een .NET Framework-object.
Voorbeelden
Voorbeeld 1: Een proxy maken voor een webservice
PS C:\> $zip = New-WebServiceProxy -Uri "http://www.webservicex.net/uszip.asmx?WSDL"
Met deze opdracht maakt u een .NET Framework-proxy van de US Zip-webservice in Windows PowerShell.
Voorbeeld 2: Een proxy voor een webservice maken en naamruimte en klasse opgeven
PS C:\> $URI = "http://www.webservicex.net/uszip.asmx?WSDL"
PS C:\> $zip = New-WebServiceProxy -Uri $URI -Namespace "WebServiceProxy" -Class "USZip"
Deze opdracht maakt gebruik van de cmdlet New-WebServiceProxy om een .NET Framework-proxy van de US Zip-webservice te maken.
Met de eerste opdracht wordt de URI van de webservice opgeslagen in de variabele $URI.
Met de tweede opdracht wordt de webserviceproxy gemaakt. De opdracht gebruikt de parameter Uri om de URI en de -naamruimte en klasse- parameters op te geven om de naamruimte en klasse van het object op te geven.
Voorbeeld 3: Methoden van een webserviceproxy weergeven
PS C:\> $zip | Get-Member -MemberType method
TypeName: WebServiceProxy.USZip
Name MemberType Definition
---- ---------- ----------
Abort Method System.Void Abort(
BeginGetInfoByAreaCode Method System.IAsyncResul
BeginGetInfoByCity Method System.IAsyncResul
BeginGetInfoByState Method System.IAsyncResul
BeginGetInfoByZIP Method System.IAsyncResul
CreateObjRef Method System.Runtime.Rem
Discover Method System.Void Discov
Dispose Method System.Void Dispos
EndGetInfoByAreaCode Method System.Xml.XmlNode
EndGetInfoByCity Method System.Xml.XmlNode
EndGetInfoByState Method System.Xml.XmlNode
EndGetInfoByZIP Method System.Xml.XmlNode
Equals Method System.Boolean Equ
GetHashCode Method System.Int32 GetHa
GetInfoByAreaCode Method System.Xml.XmlNode
GetInfoByCity Method System.Xml.XmlNode
GetInfoByState Method System.Xml.XmlNode
GetInfoByZIP Method System.Xml.XmlNode
GetLifetimeService Method System.Object GetL
GetType Method System.Type GetTyp
InitializeLifetimeService Method System.Object Init
ToString Method System.String ToSt
Met deze opdracht wordt de Get-Member-cmdlet gebruikt om de methoden van het webserviceproxyobject weer te geven in de variabele $zip. In het volgende voorbeeld gebruiken we deze methoden.
Zoals u ziet, weerspiegelt de TypeName van het proxyobject WebServiceProxy de naamruimte en klassenamen die in het vorige voorbeeld zijn opgegeven.
Voorbeeld 4: Een webserviceproxy gebruiken
PS C:\> $zip.GetInfoByZip(20500).table
CITY : Washington
STATE : DC
ZIP : 20500
AREA_CODE : 202
TIME_ZONE : E
Deze opdracht maakt gebruik van de webserviceproxy die is opgeslagen in de variabele $zip. De opdracht maakt gebruik van de GetInfoByZip methode van de proxy en de bijbehorende tabeleigenschap.
Parameters
-Class
Hiermee geeft u een naam op voor de proxyklasse die door de cmdlet voor de webservice wordt gemaakt. De waarde van deze parameter wordt samen met de naamruimte parameter gebruikt om een volledig gekwalificeerde naam voor de klasse op te geven. De standaardwaarde wordt gegenereerd op basis van de URI (Uniform Resource Identifier).
Type: | String |
Aliassen: | FileName, FN |
Position: | 1 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Credential
Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. De standaardwaarde is de huidige gebruiker. Dit is een alternatief voor het gebruik van de parameter UseDefaultCredential.
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. Als u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.
Type: | PSCredential |
Aliassen: | Cred |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Namespace
Hiermee geeft u een naamruimte voor de nieuwe klasse.
De waarde van deze parameter wordt samen met de waarde van de parameter Klasse gebruikt om een volledig gekwalificeerde naam voor de klasse te genereren. De standaardwaarde is Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes plus een type dat wordt gegenereerd op basis van de URI.
U kunt de waarde van de naamruimte instellen parameter, zodat u toegang hebt tot meerdere webservices met dezelfde naam.
Type: | String |
Aliassen: | NS |
Position: | 2 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Uri
Hiermee geeft u de URI van de webservice. Voer een URI of het pad en de bestandsnaam in van een bestand dat een servicebeschrijving bevat.
De URI moet verwijzen naar een .asmx-pagina of naar een pagina die een servicebeschrijving retourneert.
Als u een servicebeschrijving wilt retourneren van een webservice die is gemaakt met behulp van ASP.NET, voegt u '? WSDL' naar de URL van de webservice (bijvoorbeeld https://www.contoso.com/MyWebService.asmx?WSDL
).
Type: | Uri |
Aliassen: | WL, WSDL, Path |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-UseDefaultCredential
Geeft aan dat deze cmdlet de standaardreferentie gebruikt. Met deze cmdlet stelt u de eigenschap UseDefaultCredential in het resulterende proxyobject in op True. Dit is een alternatief voor het gebruik van de parameter Credential.
Type: | SwitchParameter |
Aliassen: | UDC |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
None
U kunt invoer voor deze cmdlet niet doorsluisen.
Uitvoerwaarden
A Web service proxy object
Met deze cmdlet wordt een webserviceproxyobject geretourneerd. De naamruimte en klasse van het object worden bepaald door de parameters van de opdracht. De standaardwaarde wordt gegenereerd op basis van de invoer-URI.
Notities
New-WebServiceProxy de klasse System.Net.WebClient gebruikt om de opgegeven webservice te laden.