New-WebServiceProxy
Hiermee maakt u een webserviceproxyobject waarmee u de webservice in 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 New-WebServiceProxy
cmdlet kunt u een webservice gebruiken in PowerShell. De cmdlet maakt verbinding met een webservice en maakt een webserviceproxyobject in 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
In dit voorbeeld wordt een .NET Framework-proxy gemaakt van de rekenmachinewebservice in Windows PowerShell.
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
Voorbeeld 2: Een proxy voor een webservice maken en naamruimte en klasse opgeven
In dit voorbeeld wordt de New-WebServiceProxy
cmdlet gebruikt om een .NET Framework-proxy van de calculatorwebservice te maken.
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
De opdracht gebruikt de URI-parameter om de URI en de naamruimte - en klasseparameters op te geven om de naamruimte en klasse van het object op te geven.
Voorbeeld 3: Methoden van een webserviceproxy weergeven
$calc | Get-Member -MemberType method
TypeName: WSProxy.Calculator
Name MemberType Definition
---- ---------- ----------
Abort Method void Abort()
Add Method int Add(int intA, int intB)
AddAsync Method void AddAsync(int intA, int intB), void AddAsync(int intA,
BeginAdd Method System.IAsyncResult BeginAdd(int intA, int intB, System.Asy
BeginDivide Method System.IAsyncResult BeginDivide(int intA, int intB, System.
BeginMultiply Method System.IAsyncResult BeginMultiply(int intA, int intB, Syste
BeginSubtract Method System.IAsyncResult BeginSubtract(int intA, int intB, Syste
CancelAsync Method void CancelAsync(System.Object userState)
CreateObjRef Method System.Runtime.Remoting.ObjRef CreateObjRef(type requestedT
Discover Method void Discover()
Dispose Method void Dispose(), void IDisposable.Dispose()
Divide Method int Divide(int intA, int intB)
DivideAsync Method void DivideAsync(int intA, int intB), void DivideAsync(int
EndAdd Method int EndAdd(System.IAsyncResult asyncResult)
EndDivide Method int EndDivide(System.IAsyncResult asyncResult)
EndMultiply Method int EndMultiply(System.IAsyncResult asyncResult)
EndSubtract Method int EndSubtract(System.IAsyncResult asyncResult)
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetLifetimeService Method System.Object GetLifetimeService()
GetType Method type GetType()
InitializeLifetimeService Method System.Object InitializeLifetimeService()
Multiply Method int Multiply(int intA, int intB)
MultiplyAsync Method void MultiplyAsync(int intA, int intB), void MultiplyAsync(
Subtract Method int Subtract(int intA, int intB)
SubtractAsync Method void SubtractAsync(int intA, int intB), void SubtractAsync(
ToString Method string ToString()
In dit voorbeeld wordt de Get-Member
cmdlet gebruikt om de methoden van het webserviceproxyobject in de $calc
variabele weer te geven. In het volgende voorbeeld wordt gebruikgemaakt van deze methoden.
U ziet dat de TypeName van het proxyobject, WebServiceProxy, de naamruimte en klassenamen weerspiegelt die in het vorige voorbeeld zijn opgegeven.
Voorbeeld 4: Een webserviceproxy gebruiken
PS> $calc.Multiply(6,7)
42
In dit voorbeeld wordt de webserviceproxy gebruikt die is opgeslagen in de $calc
variabele. De opdracht maakt gebruik van de vermenigvuldigingsmethode van de proxy.
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 parameter Naamruimte 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. Standaard is dit 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 klasseparameter 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 parameter Naamruimte instellen, 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 een .asmx
pagina of een pagina retourneren die een servicebeschrijving retourneert. Als u een servicebeschrijving wilt retourneren van een webservice die is gemaakt met ASP.NET, voegt u '? WSDL" naar de URL van de webservice (bijvoorbeeld http://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 referentieparameter .
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
gebruikt de klasse System.Net.WebClient om de opgegeven webservice te laden.