New-WebServiceProxy
Erstellt ein Webdienstproxyobjekt, mit dem Sie den Webdienst in PowerShell verwenden und verwalten können.
Syntax
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>]
Beschreibung
Mit dem Cmdlet New-WebServiceProxy
können Sie einen Webdienst in PowerShell verwenden. Das Cmdlet stellt eine Verbindung mit einem Webdienst und erstellt ein Webdienstproxyobjekt in PowerShell. Sie können das Proxyobjekt verwenden, um den Webdienst zu verwalten.
Ein Webdienst ist ein XML-basiertes Programm, das Daten über ein Netzwerk austauscht, insbesondere über das Internet. Microsoft .NET Framework stellt Webdienstproxyobjekte bereit, die den Webdienst als .NET Framework-Objekt darstellen.
Beispiele
Beispiel 1: Erstellen eines Proxys für einen Webdienst
In diesem Beispiel wird ein .NET Framework-Proxy des Rechnerwebdiensts in Windows PowerShell erstellt.
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
Beispiel 2: Erstellen eines Proxys für einen Webdienst und Angeben von Namespace und Klasse
In diesem Beispiel wird das Cmdlet New-WebServiceProxy
verwendet, um einen .NET Framework-Proxy des Rechnerwebdiensts zu erstellen.
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
Der Befehl verwendet den URI--Parameter, um den URI und den Namespace- und Class Parameter anzugeben, um den Namespace und die Klasse des Objekts anzugeben.
Beispiel 3: Anzeigen von Methoden eines Webdienstproxys
$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 diesem Beispiel wird das Cmdlet Get-Member
verwendet, um die Methoden des Webdienstproxyobjekts in der variablen $calc
anzuzeigen. Wir verwenden diese Methoden im folgenden Beispiel.
Beachten Sie, dass der TypeName- des Proxyobjekts, WebServiceProxy, den Namespace- und Klassennamen widerspiegelt, die im vorherigen Beispiel angegeben wurden.
Beispiel 4: Verwenden eines Webdienstproxys
PS> $calc.Multiply(6,7)
42
In diesem Beispiel wird der Webdienstproxy verwendet, der in der variablen $calc
gespeichert ist. Der Befehl verwendet die Multiplizieren Methode des Proxys.
Parameter
-Class
Gibt einen Namen für die Proxyklasse an, die vom Cmdlet für den Webdienst erstellt wird. Der Wert dieses Parameters wird zusammen mit dem Namespace Parameter verwendet, um einen vollqualifizierten Namen für die Klasse bereitzustellen. Der Standardwert wird aus dem URI (Uniform Resource Identifier) generiert.
Typ: | String |
Aliase: | FileName, FN |
Position: | 1 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Credential
Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Die Standardeinstellung ist der aktuelle Benutzer. Dies ist eine Alternative zur Verwendung des parameters UseDefaultCredential.
Geben Sie einen Benutzernamen ein, z. B. "User01" oder "Domain01\User01", oder geben Sie ein PSCredential--Objekt ein, z. B. ein Objekt, das vom Cmdlet Get-Credential
generiert wird. Wenn Sie einen Benutzernamen eingeben, werden Sie von diesem Cmdlet aufgefordert, ein Kennwort einzugeben.
Typ: | PSCredential |
Aliase: | Cred |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Namespace
Gibt einen Namespace für die neue Klasse an.
Der Wert dieses Parameters wird zusammen mit dem Wert des parameters Class verwendet, um einen vollqualifizierten Namen für die Klasse zu generieren. Der Standardwert ist Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes plus einen Typ, der aus dem URI generiert wird.
Sie können den Wert des Namespace--Parameters festlegen, sodass Sie auf mehrere Webdienste zugreifen können, die denselben Namen haben.
Typ: | String |
Aliase: | NS |
Position: | 2 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Uri
Gibt den URI des Webdiensts an. Geben Sie einen URI oder den Pfad und Dateinamen einer Datei ein, die eine Dienstbeschreibung enthält.
Der URI muss eine .asmx
Seite oder eine Seite zurückgeben, die eine Dienstbeschreibung zurückgibt. Um eine Dienstbeschreibung eines Webdiensts zurückzugeben, der mit ASP.NET erstellt wurde, fügen Sie "? WSDL" zur URL des Webdiensts (z. B. http://www.contoso.com/MyWebService.asmx?WSDL
).
Typ: | Uri |
Aliase: | WL, WSDL, Path |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-UseDefaultCredential
Gibt an, dass dieses Cmdlet die Standardanmeldeinformationen verwendet. Mit diesem Cmdlet wird die eigenschaft UseDefaultCredential im resultierenden Proxyobjekt auf True festgelegt. Dies ist eine Alternative zur Verwendung des parameters Credential.
Typ: | SwitchParameter |
Aliase: | UDC |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Sie können keine Eingabe an dieses Cmdlet weiterleiten.
Ausgaben
A Web service proxy object
Dieses Cmdlet gibt ein Webdienstproxyobjekt zurück. Der Namespace und die Klasse des Objekts werden durch die Parameter des Befehls bestimmt. Der Standardwert wird aus dem Eingabe-URI generiert.
Hinweise
New-WebServiceProxy
verwendet die System.Net.WebClient Klasse, um den angegebenen Webdienst zu laden.