New-WebServiceProxy
Crée un objet proxy de service web qui vous permet d’utiliser et de gérer le service Web dans PowerShell.
Syntaxe
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
L’applet New-WebServiceProxy
de commande vous permet d’utiliser un service web dans PowerShell. L’applet de commande se connecte à un service Web et crée un objet proxy de service web dans PowerShell. Vous pouvez utiliser l'objet proxy pour gérer le service Web.
Un service web est un programme XML qui échange des données sur un réseau, en particulier sur Internet. Microsoft .NET Framework fournit des objets proxy de service Web qui représentent le service Web sous la forme d'un objet .NET Framework.
Exemples
Exemple 1 : Créer un proxy pour un service web
Cet exemple crée un proxy .NET Framework du service web de calculatrice dans Windows PowerShell.
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
Exemple 2 : Créer un proxy pour un service Web et spécifier l’espace de noms et la classe
Cet exemple utilise l’applet New-WebServiceProxy
de commande pour créer un proxy .NET Framework du service web de calculatrice.
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
La commande utilise le paramètre Uri pour spécifier l’URI et les paramètres Espace de noms et Classe pour spécifier l’espace de noms et la classe de l’objet.
Exemple 3 : Afficher les méthodes d’un proxy de service web
$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()
Cet exemple utilise l’applet Get-Member
de commande pour afficher les méthodes de l’objet proxy de service web dans la $calc
variable. Nous avons recours à ces méthodes dans l’exemple suivant.
Notez que le TypeName de l’objet proxy, WebServiceProxy, reflète les noms d’espace de noms et de classes spécifiés dans l’exemple précédent.
Exemple 4 : Utiliser un proxy de service web
PS> $calc.Multiply(6,7)
42
Cet exemple utilise le proxy de service web stocké dans la $calc
variable. La commande utilise la méthode Multiplie du proxy.
Paramètres
-Class
Spécifie le nom de la classe proxy que l'applet de commande crée pour le service Web. La valeur de ce paramètre est utilisée avec le paramètre Namespace pour fournir un nom complet pour la classe. La valeur par défaut est générée à partir de l’URI (Uniform Resource Identifier).
Type: | String |
Alias: | FileName, FN |
Position: | 1 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Credential
Spécifie un compte d’utilisateur qui a l’autorisation d’exécuter cette action. La valeur par défaut est l’utilisateur actuel. Il s’agit d’une alternative à l’utilisation du paramètre UseDefaultCredential .
Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou entrez un objet PSCredential , tel qu’un objet généré par l’applet Get-Credential
de commande. Si vous tapez un nom d’utilisateur, cette applet de commande vous invite à entrer un mot de passe.
Type: | PSCredential |
Alias: | Cred |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Namespace
Spécifie un espace de noms pour la nouvelle classe.
La valeur de ce paramètre est utilisée avec la valeur du paramètre Class pour générer un nom complet pour la classe. La valeur par défaut est Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes plus un type généré à partir de l’URI.
Vous pouvez définir la valeur du paramètre Espace de noms pour pouvoir accéder à plusieurs services Web portant le même nom.
Type: | String |
Alias: | NS |
Position: | 2 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-Uri
Spécifie l'URI du service Web. Entrez un URI ou le chemin d’accès et le nom de fichier d’un fichier qui contient une description de service.
L’URI doit retourner une .asmx
page ou une page qui retourne une description de service. Pour renvoyer une description de service d’un service Web créé à l’aide de ASP.NET, ajoutez « ? WSDL » vers l’URL du service Web (par exemple, http://www.contoso.com/MyWebService.asmx?WSDL
).
Type: | Uri |
Alias: | WL, WSDL, Path |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-UseDefaultCredential
Indique que cette applet de commande utilise les informations d’identification par défaut. Cette applet de commande définit la propriété UseDefaultCredential dans l’objet proxy résultant sur True. Il s’agit d’une alternative à l’utilisation du paramètre Credential .
Type: | SwitchParameter |
Alias: | UDC |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger d'entrée vers cette applet de commande.
Sorties
A Web service proxy object
Cette applet de commande retourne un objet proxy de service web. L'espace de noms et la classe des objets sont déterminés par les paramètres de la commande. La valeur par défaut est générée à partir de l’URI d’entrée.
Notes
New-WebServiceProxy
utilise la classe System.Net.WebClient pour charger le service Web spécifié.