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).
Typ: | String |
Aliasy: | FileName, FN |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | PSCredential |
Aliasy: | Cred |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Aliasy: | NS |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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
).
Typ: | Uri |
Aliasy: | WL, WSDL, Path |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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 .
Typ: | SwitchParameter |
Aliasy: | UDC |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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-WebServiceProxy
używa klasy System.Net.WebClient, aby załadować określoną usługę sieci Web.