Sdílet prostřednictvím


New-WebServiceProxy

Vytvoří objekt proxy webové služby, který umožňuje používat a spravovat webovou službu v PowerShellu.

Syntaxe

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

Rutina New-WebServiceProxy umožňuje používat webovou službu v PowerShellu. Rutina se připojí k webové službě a v PowerShellu vytvoří objekt proxy webové služby. Ke správě webové služby můžete použít objekt proxy.

Webová služba je program založený na jazyce XML, který vyměňuje data přes síť, zejména přes internet. Rozhraní Microsoft .NET Framework poskytuje objekty proxy webových služeb, které představují webovou službu jako objekt rozhraní .NET Framework.

Příklady

Příklad 1: Vytvoření proxy serveru pro webovou službu

Tento příklad vytvoří proxy rozhraní .NET Framework webové služby kalkulačky ve Windows PowerShellu.

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

Příklad 2: Vytvoření proxy serveru pro webovou službu a určení oboru názvů a třídy

Tento příklad používá rutinu New-WebServiceProxy k vytvoření proxy rozhraní .NET Framework webové služby kalkulačky.

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

Příkaz pomocí parametru Uri určuje identifikátor URI a parametry oboru názvů a třídy k určení oboru názvů a třídy objektu.

Příklad 3: Zobrazení metod proxy webové služby

$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()

Tento příklad používá rutinu Get-Member k zobrazení metod objektu proxy webové služby v $calc proměnné. Tyto metody používáme v následujícím příkladu.

Všimněte si, že TypeName objektu proxy, WebServiceProxy, odráží obor názvů a názvy tříd, které byly zadány v předchozím příkladu.

Příklad 4: Použití proxy webové služby

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

Tento příklad používá proxy webové služby uložené v $calc proměnné. Příkaz používá metodu Multipli proxy.

Parametry

-Class

Určuje název třídy proxy, kterou rutina vytvoří pro webovou službu. Hodnota tohoto parametru se používá společně s parametrem Namespace k poskytnutí plně kvalifikovaného názvu třídy. Výchozí hodnota se vygeneruje z identifikátoru URI (Uniform Resource Identifier).

Typ:String
Aliasy:FileName, FN
Position:1
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Credential

Určuje uživatelský účet, který má oprávnění k provedení této akce. Ve výchozím nastavení je to aktuální uživatel. Toto je alternativa k použití parametru UseDefaultCredential .

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential , například objekt vygenerovaný rutinou Get-Credential . Pokud zadáte uživatelské jméno, tato rutina vás vyzve k zadání hesla.

Typ:PSCredential
Aliasy:Cred
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Namespace

Určuje obor názvů pro novou třídu.

Hodnota tohoto parametru se používá společně s hodnotou parametru Class k vygenerování plně kvalifikovaného názvu třídy. Výchozí hodnota je Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes plus typ vygenerovaný z identifikátoru URI.

Hodnotu parametru Obor názvů můžete nastavit tak, abyste měli přístup k více webovým službám se stejným názvem.

Typ:String
Aliasy:NS
Position:2
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Uri

Určuje identifikátor URI webové služby. Zadejte identifikátor URI nebo cestu a název souboru, který obsahuje popis služby.

Identifikátor URI musí vrátit .asmx stránku nebo stránku, která vrací popis služby. Chcete-li vrátit popis služby webové služby vytvořené pomocí ASP.NET, připojte "? WSDL na adresu URL webové služby (například http://www.contoso.com/MyWebService.asmx?WSDL).

Typ:Uri
Aliasy:WL, WSDL, Path
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-UseDefaultCredential

Označuje, že tato rutina používá výchozí přihlašovací údaje. Tato rutina nastaví Vlastnost UseDefaultCredential ve výsledném objektu proxy na Hodnotu True. Toto je alternativa k použití parametru Credential .

Typ:SwitchParameter
Aliasy:UDC
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

None

Vstup do této rutiny nelze převést.

Výstupy

A Web service proxy object

Tato rutina vrátí objekt proxy webové služby. Obor názvů a třída objektu jsou určeny parametry příkazu. Výchozí hodnota se vygeneruje ze vstupního identifikátoru URI.

Poznámky

New-WebServiceProxypoužívá System.Net.WebClient třídy k načtení zadané webové služby.