New-WebServiceProxy

Tworzy obiekt serwera proxy usługi sieci Web, który umożliwia korzystanie z usługi sieci Web i zarządzanie nią w programie PowerShell.

Składnia

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>]

Opis

Polecenie New-WebServiceProxy cmdlet umożliwia korzystanie z usługi internetowej w programie PowerShell. Polecenie cmdlet łączy się z usługą sieci Web i tworzy obiekt serwera proxy usługi sieci Web w programie PowerShell. Obiekt proxy służy do zarządzania usługą sieci Web.

Usługa sieci Web to program oparty na formacie XML, który wymienia dane za pośrednictwem sieci, zwłaszcza przez Internet. Program Microsoft .NET Framework udostępnia obiekty serwera proxy usługi sieci Web reprezentujące usługę internetową jako obiekt programu .NET Framework.

Przykłady

Przykład 1. Tworzenie serwera proxy dla usługi sieci Web

W tym przykładzie tworzony jest serwer proxy programu .NET Framework usługi internetowej kalkulatora w programie Windows PowerShell.

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

Przykład 2. Tworzenie serwera proxy dla usługi sieci Web i określanie przestrzeni nazw i klasy

W tym przykładzie użyto New-WebServiceProxy polecenia cmdlet do utworzenia serwera proxy programu .NET Framework usługi internetowej kalkulatora.

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

Polecenie używa parametru Uri do określenia identyfikatora URI oraz parametrów przestrzeni nazw i klasy w celu określenia przestrzeni nazw i klasy obiektu.

Przykład 3. Wyświetlanie metod serwera proxy usługi sieci 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()

W tym przykładzie Get-Member użyto polecenia cmdlet do wyświetlenia metod obiektu serwera proxy usługi sieci Web w zmiennej $calc . W poniższym przykładzie użyto tych metod.

Zwróć uwagę, że typeName obiektu proxy WebServiceProxy odzwierciedla przestrzeń nazw i nazwy klas, które zostały określone w poprzednim przykładzie.

Przykład 4. Używanie serwera proxy usługi sieci Web

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

W tym przykładzie użyto serwera proxy usługi sieci Web przechowywanego w zmiennej $calc . Polecenie używa metody Multiply serwera proxy.

Parametry

-Class

Określa nazwę klasy serwera proxy, którą polecenie cmdlet tworzy dla usługi sieci Web. Wartość tego parametru jest używana razem z parametrem Przestrzeni nazw , aby podać w pełni kwalifikowaną nazwę klasy. Wartość domyślna jest generowana na podstawie identyfikatora URI (Uniform Resource Identifier).

Type:String
Aliases:FileName, FN
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Wartość domyślna to użytkownik bieżący. Jest to alternatywa dla używania parametru UseDefaultCredential .

Wpisz nazwę użytkownika, taką jak User01 lub Domain01\User01, lub wprowadź obiekt PSCredential , taki jak jeden wygenerowany przez Get-Credential polecenie cmdlet. Jeśli wpiszesz nazwę użytkownika, to polecenie cmdlet wyświetli monit o podanie hasła.

Type:PSCredential
Aliases:Cred
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Namespace

Określa przestrzeń nazw dla nowej klasy.

Wartość tego parametru jest używana razem z wartością parametru Class w celu wygenerowania w pełni kwalifikowanej nazwy klasy. Wartość domyślna to Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes oraz typ wygenerowany na podstawie identyfikatora URI.

Można ustawić wartość parametru Przestrzeni nazw , aby uzyskać dostęp do wielu usług sieci Web o tej samej nazwie.

Type:String
Aliases:NS
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Uri

Określa identyfikator URI usługi sieci Web. Wprowadź identyfikator URI lub ścieżkę i nazwę pliku zawierającego opis usługi.

Identyfikator URI musi zwrócić .asmx stronę lub stronę zwracającą opis usługi. Aby zwrócić opis usługi sieci Web utworzonej przy użyciu ASP.NET, dołącz "? WSDL" do adresu URL usługi sieci Web (na przykład http://www.contoso.com/MyWebService.asmx?WSDL).

Type:Uri
Aliases:WL, WSDL, Path
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UseDefaultCredential

Wskazuje, że to polecenie cmdlet używa poświadczeń domyślnych. To polecenie cmdlet ustawia właściwość UseDefaultCredential w wynikowym obiekcie proxy na true. Jest to alternatywa dla użycia parametru Credential .

Type:SwitchParameter
Aliases:UDC
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Dane wejściowe

None

Nie można przekazać danych wejściowych potoku do tego polecenia cmdlet.

Dane wyjściowe

A Web service proxy object

To polecenie cmdlet zwraca obiekt serwera proxy usługi sieci Web. Przestrzeń nazw i klasa obiektu są określane przez parametry polecenia. Wartość domyślna jest generowana na podstawie identyfikatora URI wejściowego.

Uwagi

New-WebServiceProxyużywa klasy System.Net.WebClient, aby załadować określoną usługę sieci Web.