New-WebServiceProxy
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
コマンドレットを使用すると、PowerShell で Web サービスを使用できます。 コマンドレットは Web サービスに接続し、PowerShell で Web サービス プロキシ オブジェクトを作成します。 プロキシ オブジェクトを使用して Web サービスを管理できます。
Web サービスは、特にインターネット経由で、ネットワーク経由でデータを交換する XML ベースのプログラムです。 Microsoft .NET Framework には Web サービス プロキシ オブジェクトが用意されており、Web サービスを .NET Framework オブジェクトとして表します。
例
例 1: Web サービスのプロキシを作成する
この例では、Windows PowerShell で電卓 Web サービスの .NET Framework プロキシを作成します。
$calc = New-WebServiceProxy -Uri "http://www.dneonline.com/calculator.asmx?wsdl"
例 2: Web サービスのプロキシを作成し、名前空間とクラスを指定する
この例では、コマンドレットを New-WebServiceProxy
使用して、電卓 Web サービスの .NET Framework プロキシを作成します。
$URI = "http://www.dneonline.com/calculator.asmx?wsdl"
$calc = New-WebServiceProxy -Uri $URI -Namespace "WSProxy" -Class "Calculator"
このコマンドでは、URI パラメーターを使用して URI を指定し、Namespace パラメーターと Class パラメーターを使用してオブジェクトの名前空間とクラスを指定します。
例 3: 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()
この例では、コマンドレットを Get-Member
使用して、変数内の Web サービス プロキシ オブジェクトのメソッドを $calc
表示します。 次の例では、これらのメソッドを使用します。
プロキシ オブジェクト WebServiceProxy の TypeName に、前の例で指定した名前空間とクラス名が反映されていることに注意してください。
例 4: Web サービス プロキシを使用する
PS> $calc.Multiply(6,7)
42
この例では、変数に格納されている Web サービス プロキシを $calc
使用します。 このコマンドでは、プロキシの Multiply メソッドを使用します。
パラメーター
-Class
コマンドレットが Web サービス用に作成したプロキシ クラスの名前を指定します。 このパラメーターの値は、Namespace パラメーターと共に使用され、クラスの完全修飾名を指定します。 既定値は、Uniform Resource Identifier (URI) から生成されます。
Type: | String |
Aliases: | FileName, FN |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
この処理を実行するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。 これは、UseDefaultCredential パラメーターを使用する代わりに使用します。
User01 や Doメイン01\User01 などのユーザー名を入力するか、コマンドレットによってGet-Credential
生成された PSCredential オブジェクトを入力します。 ユーザー名を入力すると、このコマンドレットによってパスワードの入力が求められます。
Type: | PSCredential |
Aliases: | Cred |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Namespace
新しいクラスの名前空間を指定します。
このパラメーターの値は、Class パラメーターの値と共に使用され、クラスの完全修飾名が生成されます。 既定値は 、Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes に加えて、URI から生成される型です。
名前空間パラメーターの値を設定して、同じ名前の複数の Web サービスにアクセスできるようにします。
Type: | String |
Aliases: | NS |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Uri
Web サービスの URI を指定します。 サービスの説明を含むファイルの URI またはパスとファイル名を入力します。
URI は、サービスの説明を .asmx
返すページまたはページを返す必要があります。 ASP.NET を使用して作成された Web サービスのサービスの説明を返すには、"?WSDL" を Web サービスの URL に変換します (例: http://www.contoso.com/MyWebService.asmx?WSDL
Type: | Uri |
Aliases: | WL, WSDL, Path |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseDefaultCredential
このコマンドレットが既定の資格情報を使用することを示します。 このコマンドレットは、結果の プロキシ オブジェクトの UseDefaultCredential プロパティを True に設定します。 これは、Credential パラメーターを使用する代わりに使用します。
Type: | SwitchParameter |
Aliases: | UDC |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
None
パイプを使用してこのコマンドレットに入力を渡すことはできません。
出力
A Web service proxy object
このコマンドレットは、Web サービス プロキシ オブジェクトを返します。 オブジェクトの名前空間とクラスは、コマンドのパラメーターによって決定されます。 既定値は入力 URI から生成されます。
メモ
New-WebServiceProxy
は、 System.Net.WebClient クラスを使用して、指定された Web サービスを読み込みます。
関連リンク
PowerShell
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示