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 プロパティを使用します。






関連項目




目次