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.