web-dev-qa-db-ja.com

PowerShellでcurlコマンドを使用する方法は?

PowerShellでcurlコマンドを使用して、Jenkinsジョブを介してビットバケットプルリクエストページにコメントを投稿しています。以下のPowerShellコマンドを使用してcurlコマンドを実行しましたが、以下に示すエラーが発生しています。誰かがこれを機能させるために私を助けてくれますか?

$CurlArgument="-u [email protected]:yyyy -X POST https://xxx.bitbucket.org/1.0/repositories/abcd/efg/pull-requests/2229/comments --data content=success"
$CURLEXE='C:\Program Files\Git\mingw64\bin\curl.exe'
& $CURLEXE $CurlArgument

エラーの詳細:

curl.exe:curl:URLが指定されていません!
行:3 char:1 
 +&$ CURLEXE $ CurlArgument 
 + ~~~~~~~~~~~ ~~~~~~~~~~~~~ 
 + CategoryInfo:NotSpecified:(curl:URLが指定されていない!:String)[]、RemoteException 
 + FullyQualifiedErrorId:NativeCommandError 
 
 curl:詳細については、「curl --help」または「curl --manual」を試してください

splatting を使用します。

$CurlArgument = '-u', '[email protected]:yyyy',
                '-X', 'POST',
                'https://xxx.bitbucket.org/1.0/repositories/abcd/efg/pull-requests/2229/comments',
                '--data', 'content=success'
$CURLEXE = 'C:\Program Files\Git\mingw64\bin\curl.exe'
& $CURLEXE @CurlArgument
8
Ansgar Wiechers

Powershell 3.0以降には、Invoke-WebRequestとInvoke-RestMethodの両方があります。 Curlは、実際にはPoSHのInvoke-WebRequestのエイリアスです。ネイティブのPowershellを使用することはcurlよりもはるかに適切だと思いますが、それはあなた次第です:)。

Invoke-WebRequest MSDNドキュメントは次のとおりです。 https://technet.Microsoft.com/en-us/library/hh849901.aspx?f=255&MSPPError=-2147217396

Invoke-RestMethod MSDNドキュメントは次のとおりです。 https://technet.Microsoft.com/en-us/library/hh849971.aspx?f=255&MSPPError=-2147217396

8
Jim Moyle