PowerShell を使用して GET, POST, PUT のリクエストを行う

単純な Get リクエストであればブラウザで URL 叩けば終了だが、HTTP ヘッダーの送信や POST を行いたい場合、PowerShellInvoke-RestMethod が使える。

下記説明では、基本的に変数を使用している。PowerShell ISE であればコピペして実行が出来るので、簡単楽チン。何度も実行するようであれば、最初から PowerShell ISE をインストールして使うのを推奨。

以下は Get の基本形。URI 叩くだけなので、ここまでであればブラウザでも簡単に実行できる。
$uri = 'https://functionapp20180430103816.azurewebsites.net/api/Function1?code=xxxjW/l7mTbosJgxJ9GCWlZTt8dDok2VLTviaa1HOcXu8HJAfugRNw=='

Invoke-RestMethod -Method Get -Uri $uri
HTTP ヘッダーに値をセットしての呼び出し
$uri = 'https://functionapp20180430103816.azurewebsites.net/api/Function1'
$headers = @{ 'x-functions-key' = 'xxxjW/l7mTbosJgxJ9GCWlZTt8dDok2VLTviaa1HOcXu8HJAfugRNw==' }

Invoke-RestMethod -Method Get -Uri $uri -Headers $headers
POST での JSON データ送信。PUT も使い方は同様。Body は UTF8 エンコーディングして送信。
$uri = 'https://functionapp20180430103816.azurewebsites.net/api/PostJsonFunction1'
$headers = @{ 'x-functions-key' = 'xxxTvmIGFWrdMXjMVwaarpJadd/IvL5hsQO/ODt9r52UYOHuwM7faA==' }
$body = [System.Text.Encoding]::UTF8.GetBytes('{ "name":"値" }')

Invoke-RestMethod -Method Post -Uri $uri -Headers $headers -Body $body -ContentType 'application/json'