シェルでRest APIを呼びたい案件。
curlの参考サイトは出てきたけど、-H
とか-X
が使えない?と思ってたらやっぱりそうらしく。
単純なGetならともかく、-H も -X も使えない仕様にしたの、なんでなん……? ↩
PowerShell でcurlを使いたい。JSONをエスケープせずに。 - Qiita
調べつつInvoke-RestMethod
で実装した話。
GET
$url = 'http://hogehoge.com'
Invoke-RestMethod -Uri $url
ベーシック認証
$user = "USER_ID"
$password = "abcdef"
$secpasswd = ConvertTo-SecureString $password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($user, $secpasswd)
$url = 'http://hogehoge.com'
####実行
Invoke-RestMethod -Uri $url -Credential $cred
PATCH
$body = @{hoge="hogehoge";} ###PATCHしたい内容を指定の様式で
Invoke-RestMethod -Uri $url -Body $body -ContentType 'application/json' -method patch ###json型であることを明示的に示す
順次追加する予定は…ある。。
APIはあってるのに403エラー多発で心が折れそう。。