Windows PowerShell で Web サービスの使用と管理を行うことができる Web サービス プロキシ オブジェクトを作成します。
構文
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>]
説明
New-WebServiceProxy コマンドレットでは、Web サービスを Windows PowerShell で使用できます。このコマンドレットは Web サービスに接続し、Web サービス プロキシ オブジェクトを Windows PowerShell に作成します。プロキシ オブジェクトを使用して Web サービスを管理できます。
Web サービスは XML ベースのプログラムで、ネットワーク、特にインターネット上でデータをやり取りします。Microsoft .NET Framework には Web サービス プロキシ オブジェクトが用意されており、Web サービスを .NET Framework オブジェクトとして表します。
パラメーター
-Class <string>
コマンドレットが Web サービス用に作成したプロキシ クラスの名前を指定します。このパラメーターの値を Namespace パラメーターと併用すると、クラスの完全修飾名が生成されます。既定値は URI から生成されます。
必須 |
false |
位置 |
2 |
既定値 |
Generated from the URI |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Credential <PSCredential>
この処理を実行するアクセス許可を持つユーザー アカウントを指定します。既定値は現在のユーザーです。これは、UseDefaultCredential パラメーターを使用した方法に代わる方法です。
"User01" や "Domain01\User01" などユーザー名を入力します。または、Get-Credential コマンドレットで生成されるような PSCredential オブジェクトを入力します。ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Namespace <string>
新しいクラスの名前空間を指定します。
このパラメーターの値を Class パラメーターの値と併用すると、クラスの完全修飾名が生成されます。既定値は Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes に URI から生成された型を加えたものです。
Namespace パラメーターの値は、複数の Web サービスに同じ名前でアクセスできるように設定できます。
必須 |
false |
位置 |
3 |
既定値 |
Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-URI <Uri>
Web サービスの URI を指定します。URI またはサービスの説明が含まれているファイルのパスとファイル名を入力します。
URI は、.asmx ページまたはサービスの説明を返すページを参照する必要があります。ASP.NET を使用して作成した Web サービスのサービスの説明を返すには、Web サービスの URL に "?WSDL" を追加します。たとえば、http://www.contoso.com/MyWebService.asmx?WSDL とします。
必須 |
true |
位置 |
1 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-UseDefaultCredential
プロキシ オブジェクトの UseDefaultCredential パラメーターを True に設定します。これは、Credential パラメーターを使用した方法に代わる方法です。
必須 |
false |
位置 |
named |
既定値 |
False |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
なし このコマンドレットはパイプラインから入力を取得しません。 |
出力 |
Web サービス プロキシ オブジェクト オブジェクトの名前空間とクラスはコマンドのパラメーターによって決定されます。既定値は入力 URI (Uniform Resource Identifier) から生成されます。 |
注
New-WebServiceProxy は System.Net.WebClient クラスを使用して、指定された Web サービスを読み込みます。
例 1
C:\PS>$zip = New-WebServiceProxy -uri http://www.webservicex.net/uszip.asmx?WSDL 説明 ----------- このコマンドは New-WebServiceProxy コマンドを使用して、US Zip Web サービスの .NET Framework プロキシを Windows PowerShell に作成します。
例 2
C:\PS>$URI = "http://www.webservicex.net/uszip.asmx?WSDL" C:\PS> $zip = New-WebServiceProxy -uri $URI -namespace WebServiceProxy -class ZipClass 説明 ----------- このコマンドは、New-WebServiceProxy コマンドレットを使用して US Zip Web サービスの .NET Framework プロキシを作成します。 最初のコマンドは、Web サービスの URI を $URI 変数に保存します。 2 番目のコマンドは Web サービス プロキシを作成します。URI の指定には URI パラメーター、オブジェクトの名前空間とクラスの指定には Namespace パラメーターと Class パラメーターをそれぞれ使用します。
例 3
C:\PS>$zip | get-member -type 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 説明 ----------- このコマンドは、Get-Member コマンドレットを使用して Web サービス プロキシ オブジェクトのメソッドを $zip 変数に表示します。これらのメソッドを次の例で使用します。 プロキシ オブジェクトの TypeName、WebServiceProxy には前の例で指定した名前空間とクラスが反映されていることに注意してください。
例 4
C:\PS>$zip.getinfobyzip(20500).table CITY : Washington STATE : DC ZIP : 20500 AREA_CODE : 202 TIME_ZONE : E 説明 ----------- このコマンドは、Zip 変数に保存されている Web サービス プロキシを使用します。このコマンドは、プロキシの GetInfoByZip メソッドと Table プロパティを使用します。
関連項目