New-WebServiceProxy
Skapar ett webbtjänstproxyobjekt som gör att du kan använda och hantera webbtjänsten i PowerShell.
Syntax
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
Med New-WebServiceProxy
cmdleten kan du använda en webbtjänst i PowerShell. Cmdleten ansluter till en webbtjänst och skapar ett webbtjänstproxyobjekt i PowerShell. Du kan använda proxyobjektet för att hantera webbtjänsten.
En webbtjänst är ett XML-baserat program som utbyter data över ett nätverk, särskilt via Internet. Microsoft .NET Framework tillhandahåller webbtjänstproxyobjekt som representerar webbtjänsten som ett .NET Framework-objekt.
Exempel
Exempel 1: Skapa en proxy för en webbtjänst
I det här exemplet skapas en .NET Framework-proxy för kalkylatorwebbtjänsten i Windows PowerShell.
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
Exempel 2: Skapa en proxy för en webbtjänst och ange namnrymd och klass
I det här exemplet används cmdleten New-WebServiceProxy
för att skapa en .NET Framework-proxy för kalkylatorns webbtjänst.
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
Kommandot använder URI-parametern för att ange parametrarna URI och Namnområde och Klass för att ange objektets namnområde och klass.
Exempel 3: Visningsmetoder för en webbtjänstproxy
$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()
I det här exemplet används cmdleten Get-Member
för att visa metoderna för webbtjänstproxyobjektet i variabeln $calc
. Vi använder dessa metoder i följande exempel.
Observera att TypeName för proxyobjektet WebServiceProxy återspeglar namnområdet och klassnamnen som angavs i föregående exempel.
Exempel 4: Använda en webbtjänstproxy
PS> $calc.Multiply(6,7)
42
I det här exemplet används webbtjänstproxyn som lagras i variabeln $calc
. Kommandot använder metoden Multiplicera för proxyn.
Parametrar
-Class
Anger ett namn för proxyklassen som cmdleten skapar för webbtjänsten. Värdet för den här parametern används tillsammans med parametern Namespace för att ange ett fullständigt kvalificerat namn för klassen. Standardvärdet genereras från URI (Uniform Resource Identifier).
Typ: | String |
Alias: | FileName, FN |
Position: | 1 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Credential
Anger ett användarkonto som har behörighet att utföra den här åtgärden. Standard är den aktuella användaren. Det här är ett alternativ till att använda parametern UseDefaultCredential .
Ange ett användarnamn, till exempel User01 eller Domain01\User01, eller ange ett PSCredential-objekt , till exempel ett som genereras av cmdleten Get-Credential
. Om du skriver ett användarnamn uppmanas du att ange ett lösenord i den här cmdleten.
Typ: | PSCredential |
Alias: | Cred |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Namespace
Anger ett namnområde för den nya klassen.
Värdet för den här parametern används tillsammans med värdet för parametern Klass för att generera ett fullständigt kvalificerat namn för klassen. Standardvärdet är Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes plus en typ som genereras från URI:n.
Du kan ange värdet för parametern Namespace så att du kan komma åt flera webbtjänster som har samma namn.
Typ: | String |
Alias: | NS |
Position: | 2 |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Uri
Anger webbtjänstens URI. Ange en URI eller sökväg och filnamn för en fil som innehåller en tjänstbeskrivning.
URI:n måste returnera en .asmx
sida eller till en sida som returnerar en tjänstbeskrivning. Om du vill returnera en tjänstbeskrivning av en webbtjänst som skapades med hjälp av ASP.NET lägger du till "? WSDL" till URL:en för webbtjänsten (till exempel http://www.contoso.com/MyWebService.asmx?WSDL
).
Typ: | Uri |
Alias: | WL, WSDL, Path |
Position: | 0 |
Standardvärde: | None |
Obligatorisk: | True |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-UseDefaultCredential
Anger att den här cmdleten använder standardautentiseringsuppgifterna. Den här cmdleten anger egenskapen UseDefaultCredential i det resulterande proxyobjektet till True. Det här är ett alternativ till att använda parametern Credential .
Typ: | SwitchParameter |
Alias: | UDC |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
None
Du kan inte skicka indata till den här cmdleten.
Utdata
A Web service proxy object
Den här cmdleten returnerar ett webbtjänstproxyobjekt. Objektets namnområde och klass bestäms av kommandots parametrar. Standardvärdet genereras från indata-URI:n.
Kommentarer
New-WebServiceProxy
använder klassen System.Net.WebClient för att läsa in den angivna webbtjänsten.