New-WebServiceProxy
Skapar ett webbtjänstproxyobjekt som gör att du kan använda och hantera webbtjänsten i Windows 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 cmdleten New-WebServiceProxy kan du använda en webbtjänst i Windows PowerShell. Cmdleten ansluter till en webbtjänst och skapar ett webbtjänstproxyobjekt i Windows 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
PS C:\> $zip = New-WebServiceProxy -Uri "http://www.webservicex.net/uszip.asmx?WSDL"
Det här kommandot skapar en .NET Framework-proxy för den amerikanska Zip-webbtjänsten i Windows PowerShell.
Exempel 2: Skapa en proxy för en webbtjänst och ange namnrymd och klass
PS C:\> $URI = "http://www.webservicex.net/uszip.asmx?WSDL"
PS C:\> $zip = New-WebServiceProxy -Uri $URI -Namespace "WebServiceProxy" -Class "USZip"
Det här kommandot använder cmdleten New-WebServiceProxy för att skapa en .NET Framework-proxy för den amerikanska Zip-webbtjänsten.
Det första kommandot lagrar webbtjänstens URI i variabeln $URI.
Det andra kommandot skapar webbtjänstproxyn. Kommandot använder parametern Uri för att ange parametrarna URI och Namespace och Class för att ange objektets namnområde och klass.
Exempel 3: Visningsmetoder för en webbtjänstproxy
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
Det här kommandot använder cmdleten Get-Member för att visa metoderna för webbtjänstproxyobjektet i variabeln $zip. 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 C:\> $zip.GetInfoByZip(20500).table
CITY : Washington
STATE : DC
ZIP : 20500
AREA_CODE : 202
TIME_ZONE : E
Det här kommandot använder webbtjänstproxyn som lagras i variabeln $zip. Kommandot använder metoden GetInfoByZip för proxyn och dess tabellegenskap.
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. Standardvärdet ä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 Class 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 Namnområde 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 referera till 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 webbadressen till webbtjänsten (till exempel https://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.