Compartilhar via


New-WebServiceProxy

Cria um objeto proxy de serviço Web que permite que você use e gerencie o serviço Web no PowerShell.

Sintaxe

NoCredentials (Default)

New-WebServiceProxy
    [-Uri] <Uri>
    [[-Class] <String>]
    [[-Namespace] <String>]
    [<CommonParameters>]

Credential

New-WebServiceProxy
    [-Uri] <Uri>
    [[-Class] <String>]
    [[-Namespace] <String>]
    [-Credential <PSCredential>]
    [<CommonParameters>]

UseDefaultCredential

New-WebServiceProxy
    [-Uri] <Uri>
    [[-Class] <String>]
    [[-Namespace] <String>]
    [-UseDefaultCredential]
    [<CommonParameters>]

Description

O cmdlet New-WebServiceProxy 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 proxy para gerenciar o serviço Web.

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

Exemplos

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

Este exemplo cria um proxy do .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 cmdlet New-WebServiceProxy para criar um proxy do .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 de Namespace e Class para especificar o namespace e a classe do objeto.

Exemplo 3: exibir métodos 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 cmdlet Get-Member para exibir os métodos do objeto proxy do serviço Web na variável $calc. Usamos esses métodos no exemplo a seguir.

Observe que o TypeName do objeto proxy, WebServiceProxy, reflete o namespace e os nomes de classe 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 Web armazenado na variável $calc. O comando usa o método Multiplicar do proxy.

Parâmetros

-Class

Especifica um nome para a classe 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).

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:Nome do Arquivo, FN

Conjuntos de parâmetros

(All)
Cargo:1
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Credential

Especifica uma conta de usuário que tem permissão para executar essa 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 cmdlet Get-Credential. Se você digitar um nome de usuário, esse cmdlet solicitará uma senha.

Propriedades do parâmetro

Tipo:PSCredential
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:Cred

Conjuntos de parâmetros

Credential
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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 do URI.

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

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:NS

Conjuntos de parâmetros

(All)
Cargo:2
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Uri

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

O URI deve retornar uma página .asmx 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).

Propriedades do parâmetro

Tipo:Uri
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:WL, WSDL, Caminho

Conjuntos de parâmetros

(All)
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes: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 credencial.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:UDC

Conjuntos de parâmetros

UseDefaultCredential
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

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.