New-WebServiceProxy

Cria um objeto proxy de serviço Web que permite usar e gerenciar o serviço Web no PowerShell.

Sintaxe

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

O New-WebServiceProxy cmdlet permite que você use um serviço Web no PowerShell. O cmdlet se conecta a um serviço Web e cria um objeto proxy de serviço Web no PowerShell. Você pode usar o objeto de proxy para gerenciar o serviço Web.

Um serviço da Web é um programa baseado em XML que troca dados por uma rede, especialmente pela Internet. O Microsoft .NET Framework fornece objetos de proxy de serviço Web que representam o serviço Web como um objeto do .NET Framework.

Exemplos

Exemplo 1: Criar um proxy para um serviço Web

Este exemplo cria um proxy .NET Framework do serviço Web da calculadora no Windows PowerShell.

$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"

Exemplo 2: Criar um proxy para um serviço Web e especificar namespace e classe

Este exemplo usa o New-WebServiceProxy cmdlet para criar um proxy .NET Framework do serviço Web da calculadora.

$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"

O comando usa o parâmetro Uri para especificar o URI e os parâmetros Namespace e Class para especificar o namespace e a classe do objeto.

Exemplo 3: Métodos de exibição de um proxy de serviço 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()

Este exemplo usa o Get-Member cmdlet para exibir os métodos do objeto proxy do serviço Web na $calc variável. Usamos esses métodos no exemplo a seguir.

Observe que o TypeName do objeto proxy, WebServiceProxy, reflete os nomes de namespace e classe que foram especificados no exemplo anterior.

Exemplo 4: Usar um proxy de serviço Web

PS> $calc.Multiply(6,7)
42

Este exemplo usa o proxy de serviço da Web armazenado na $calc variável. O comando usa o método Multiply do proxy.

Parâmetros

-Class

Especifica um nome para a classe de proxy que o cmdlet cria para o serviço Web. O valor desse parâmetro é usado junto com o parâmetro Namespace para fornecer um nome totalmente qualificado para a classe. O valor padrão é gerado a partir do URI (Uniform Resource Identifier).

Tipo:String
Aliases:FileName, FN
Cargo:1
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Credential

Especifica uma conta de usuário que tem permissão para executar esta ação. O padrão é o usuário atual. Essa é uma alternativa ao uso do parâmetro UseDefaultCredential .

Digite um nome de usuário, como User01 ou Domain01\User01, ou insira um objeto PSCredential , como um gerado pelo Get-Credential cmdlet. Se você digitar um nome de usuário, esse cmdlet solicitará uma senha.

Tipo:PSCredential
Aliases:Cred
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Namespace

Especifica um namespace para a nova classe.

O valor desse parâmetro é usado junto com o valor do parâmetro Class para gerar um nome totalmente qualificado para a classe. O valor padrão é Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes mais um tipo gerado a partir do URI.

Você pode definir o valor do parâmetro Namespace para que possa acessar vários serviços Web que tenham o mesmo nome.

Tipo:String
Aliases:NS
Cargo:2
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Uri

Especifica o URI do serviço Web. Insira um URI ou o caminho e o nome do arquivo de um arquivo que contenha uma descrição do serviço.

O URI deve retornar uma .asmx página ou para uma página que retorna uma descrição de serviço. Para retornar uma descrição de serviço de um serviço Web que foi criado usando ASP.NET, acrescente "? WSDL" para a URL do serviço Web (por exemplo, http://www.contoso.com/MyWebService.asmx?WSDL).

Tipo:Uri
Aliases:WL, WSDL, Path
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-UseDefaultCredential

Indica que esse cmdlet usa a credencial padrão. Esse cmdlet define a propriedade UseDefaultCredential no objeto proxy resultante como True. Essa é uma alternativa ao uso do parâmetro Credential .

Tipo:SwitchParameter
Aliases:UDC
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

None

Não é possível redirecionar a entrada para este cmdlet.

Saídas

A Web service proxy object

Esse cmdlet retorna um objeto proxy de serviço Web. O namespace e a classe do objeto são determinados pelos parâmetros do comando. O padrão é gerado a partir do URI de entrada.

Observações

New-WebServiceProxy usa a classe System.Net.WebClient para carregar o serviço Web especificado.