Compartilhar via


New-WebServiceProxy

Cria um objeto proxy de serviço Web que permite que você use e gerencie o serviço Web no Windows 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 Windows PowerShell. O cmdlet se conecta a um serviço Web e cria um objeto proxy de serviço Web no Windows 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

PS C:\> $zip = New-WebServiceProxy -Uri "http://www.webservicex.net/uszip.asmx?WSDL"

Esse comando cria um proxy do .NET Framework do serviço Web Zip dos EUA no Windows PowerShell.

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

PS C:\> $URI = "http://www.webservicex.net/uszip.asmx?WSDL"
PS C:\> $zip = New-WebServiceProxy -Uri $URI -Namespace "WebServiceProxy" -Class "USZip"

Esse comando usa o cmdlet New-WebServiceProxy para criar um proxy do .NET Framework do serviço Web Zip dos EUA.

O primeiro comando armazena o URI do serviço Web na variável $URI.

O segundo comando cria o proxy de serviço Web. 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

PS C:\> $zip | Get-Member -MemberType method
TypeName: WebServiceProxy.USZip
Name                      MemberType Definition
----                      ---------- ----------
Abort                     Method     System.Void Abort(
BeginGetInfoByAreaCode    Method     System.IAsyncResul
BeginGetInfoByCity        Method     System.IAsyncResul
BeginGetInfoByState       Method     System.IAsyncResul
BeginGetInfoByZIP         Method     System.IAsyncResul
CreateObjRef              Method     System.Runtime.Rem
Discover                  Method     System.Void Discov
Dispose                   Method     System.Void Dispos
EndGetInfoByAreaCode      Method     System.Xml.XmlNode
EndGetInfoByCity          Method     System.Xml.XmlNode
EndGetInfoByState         Method     System.Xml.XmlNode
EndGetInfoByZIP           Method     System.Xml.XmlNode
Equals                    Method     System.Boolean Equ
GetHashCode               Method     System.Int32 GetHa
GetInfoByAreaCode         Method     System.Xml.XmlNode
GetInfoByCity             Method     System.Xml.XmlNode
GetInfoByState            Method     System.Xml.XmlNode
GetInfoByZIP              Method     System.Xml.XmlNode
GetLifetimeService        Method     System.Object GetL
GetType                   Method     System.Type GetTyp
InitializeLifetimeService Method     System.Object Init
ToString                  Method     System.String ToSt

Esse comando usa o cmdlet Get-Member para exibir os métodos do objeto proxy do serviço Web na variável $zip. Usaremos 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 C:\> $zip.GetInfoByZip(20500).table
CITY      : Washington
STATE     : DC
ZIP       : 20500
AREA_CODE : 202
TIME_ZONE : E

Esse comando usa o proxy de serviço Web armazenado na variável $zip. O comando usa o método GetInfoByZip do proxy e sua propriedade Table.

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 se referir a uma página .asmx ou a 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, https://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.