New-WebServiceProxy
Crea un objeto proxy de servicio web que le permite usar y administrar el servicio web en PowerShell.
Sintaxis
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
El New-WebServiceProxy
cmdlet le permite usar un servicio web en PowerShell. El cmdlet se conecta a un servicio web y crea un objeto proxy de servicio web en PowerShell. Este objeto proxy se puede usar para administrar el servicio Web.
Un servicio web es un programa basado en XML que intercambia datos a través de una red, especialmente a través de Internet. Microsoft .NET Framework proporciona objetos proxy de servicio Web que representan el servicio Web como un objeto de .NET Framework.
Ejemplos
Ejemplo 1: Creación de un proxy para un servicio web
En este ejemplo se crea un proxy de .NET Framework del servicio web calculator en Windows PowerShell.
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
Ejemplo 2: Crear un proxy para un servicio web y especificar el espacio de nombres y la clase
En este ejemplo se usa el New-WebServiceProxy
cmdlet para crear un proxy de .NET Framework del servicio web calculator.
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
El comando usa el parámetro URI para especificar el URI y los parámetros Namespace y Class para especificar el espacio de nombres y la clase del objeto.
Ejemplo 3: Mostrar métodos de un proxy de servicio 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()
En este ejemplo se usa el Get-Member
cmdlet para mostrar los métodos del objeto proxy de servicio web en la $calc
variable . Usamos estos métodos en el ejemplo siguiente.
Observe que typeName del objeto proxy, WebServiceProxy, refleja el espacio de nombres y los nombres de clase especificados en el ejemplo anterior.
Ejemplo 4: Uso de un proxy de servicio web
PS> $calc.Multiply(6,7)
42
En este ejemplo se usa el proxy de servicio web almacenado en la $calc
variable . El comando usa el método Multiply del proxy.
Parámetros
-Class
Especifica un nombre para la clase de proxy que el cmdlet crea para el servicio Web. El valor de este parámetro se usa junto con el parámetro Namespace para proporcionar un nombre completo para la clase . El valor predeterminado se genera a partir del identificador uniforme de recursos (URI).
Tipo: | String |
Alias: | FileName, FN |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Credential
Especifica una cuenta de usuario con permiso para realizar esta acción. El valor predeterminado es el usuario actual. Se trata de una alternativa al uso del parámetro UseDefaultCredential .
Escriba un nombre de usuario, como User01 o Domain01\User01, o escriba un objeto PSCredential , como uno generado por el Get-Credential
cmdlet. Si escribe un nombre de usuario, este cmdlet le pedirá una contraseña.
Tipo: | PSCredential |
Alias: | Cred |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Namespace
Especifica un espacio de nombres para la nueva clase.
El valor de este parámetro se usa junto con el valor del parámetro Class para generar un nombre completo para la clase. El valor predeterminado es Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes más un tipo que se genera a partir del URI.
Puede establecer el valor del parámetro Namespace para que pueda acceder a varios servicios web que tengan el mismo nombre.
Tipo: | String |
Alias: | NS |
Posición: | 2 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Uri
Especifica el URI del servicio Web. Escriba un URI o la ruta de acceso y el nombre de archivo de un archivo que contenga una descripción del servicio.
El URI debe devolver una .asmx
página o a una página que devuelva una descripción del servicio. Para devolver una descripción del servicio de un servicio web que se creó mediante ASP.NET, anexe "? WSDL" a la dirección URL del servicio web (por ejemplo, http://www.contoso.com/MyWebService.asmx?WSDL
).
Tipo: | Uri |
Alias: | WL, WSDL, Path |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-UseDefaultCredential
Indica que este cmdlet usa la credencial predeterminada. Este cmdlet establece la propiedad UseDefaultCredential en el objeto proxy resultante en True. Se trata de una alternativa al uso del parámetro Credential .
Tipo: | SwitchParameter |
Alias: | UDC |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
None
No se puede canalizar la entrada a este cmdlet.
Salidas
A Web service proxy object
Este cmdlet devuelve un objeto proxy de servicio web. El espacio de nombres y la clase del objeto vienen determinados por los parámetros del comando. El valor predeterminado se genera a partir del URI de entrada.
Notas
New-WebServiceProxy
usa la clase System.Net.WebClient para cargar el servicio web especificado.