curl を PowerShell に変換

Invoke-RestMethod を使用して、curl コマンドを PowerShell コードに変換します。curl2code は WebAssembly を介してブラウザ内で完全に動作するため、データは非公開に保たれます。C# については、curl to C# 変換ツールをお試しください。Python については、curl to Python をご覧ください。以下に、すぐに使える PowerShell の例を掲載しています。

ブラウザから curl をコピーする方法

  1. 1

    デベロッパーツールを開く

    F12 キーを押すか、Ctrl+Shift+Iを使用してブラウザのデベロッパーツールを開きます。

  2. 2

    ネットワークタブに移動

    ネットワークタブをクリックし、HTTP リクエストをトリガーするアクションを実行します。

  3. 3

    cURL としてコピー

    リクエストを右クリック → コピーcURL としてコピー を選択します。その後、上に貼り付けてください。

よくある質問

PowerShell Invoke-RestMethod とは何ですか?

Invoke-RestMethod は、JSON/XML の自動解析機能を備えた HTTP リクエストを行うための PowerShell 組み込みコマンドレットです。解析されたオブジェクトを直接返すため、手動のデシリアライズは不要です。PowerShell 3.0 以降および PowerShell Core で利用可能です。curl2code は、生のレスポンスを返す Invoke-WebRequest もサポートしています。

Invoke-RestMethod と Invoke-WebRequest のどちらを使うべきですか?

Invoke-RestMethod は JSON/XML レスポンスを PowerShell オブジェクトに自動的に解析するため、API 作業に最適です。Invoke-WebRequest は、ヘッダー、ステータスコード、生のコンテンツを含む完全なレスポンスを返すため、デバッグや JSON 以外のレスポンスに適しています。API には RestMethod を、スクレイピングや診断には WebRequest を使用してください。同様の .NET アプローチについては、curl to C# を参照してください。

PowerShell で認証を処理するにはどうすればよいですか?

Bearer 認証の場合:Invoke-RestMethod -Uri $url -Headers @{ Authorization = "Bearer $token" }。Basic 認証の場合は、-Credential (Get-Credential) または -Authentication Basic (PowerShell 6+) を使用します。PowerShell は SecureString を使用して認証情報を安全に処理します。curl2code は認証フラグを PowerShell コマンドレットのパラメータに変換します。

PowerShell でマルチパートフォームデータを送信するにはどうすればよいですか?

PowerShell 6+ は、マルチパートアップロード用に -Form @{ file = Get-Item "doc.pdf"; desc = "My file" } をサポートしています。Windows PowerShell 5.1 では、マルチパートボディを手動で構築するか、.NET クラス (System.Net.Http.MultipartFormDataContent) を使用します。curl2code は -F フラグの変換を処理します。

PowerShell で HTTP エラーを処理するにはどうすればよいですか?

try/catch を使用します。どちらのコマンドレットも 2xx 以外のレスポンスで WebException をスローします。$_.Exception.Response でレスポンスにアクセスできます。PowerShell 7+ では、-SkipHttpErrorCheck を使用してスローを防止し、代わりに $response.StatusCode を手動で確認できます。

PowerShell で JSON を扱うにはどうすればよいですか?

Invoke-RestMethod は JSON を PSObject に自動的に解析します。手動で変換する場合:$data = $json | ConvertFrom-Json。JSON を送信する場合:$body = @{ name = "John" } | ConvertTo-Json。PowerShell のオブジェクトパイプラインは、フィルタリングや変換のために、解析された API レスポンスと自然に統合されます。

PowerShell でタイムアウトを設定するにはどうすればよいですか?

両方のコマンドレットで -TimeoutSec 30 パラメータを使用します。PowerShell 7+ では、きめ細かな制御のために -ConnectionTimeoutSeconds-OperationTimeoutSeconds を使用します。リトライには、-MaximumRetryCount 3-RetryIntervalSec 2 (PowerShell 7.1+) を使用します。

PowerShell でプロキシを使用するにはどうすればよいですか?

-Proxy 'http://proxy:8080' パラメータを使用します。プロキシ認証の場合:-ProxyCredential (Get-Credential)。PowerShell は Windows のシステム全体のプロキシ設定をデフォルトで尊重します。バイパスするには:-NoProxy (PowerShell 6+)。curl2code は -x フラグを PowerShell のプロキシパラメータに変換します。

PowerShellでJSONボディを含むPOSTリクエストを送信する方法は?

curl2codeを使用して、curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URLのようなcurlのPOSTコマンドをPowerShellに変換します。生成されたコードではInvoke-RestMethod -Uri $url -Method Post -Body ($data | ConvertTo-Json) -ContentType 'application/json'を使用します。curl2codeはJSONコンテンツを含む-d/--dataフラグを自動的に検出し、Invoke-RestMethodのコードに適切なContent-Typeヘッダーを設定します。

PowerShellでBearerトークン認証を追加する方法は?

curl -H "Authorization: Bearer YOUR_TOKEN" URLをcurl2codeに渡すと、認証ヘッダー-Headers @{ Authorization = 'Bearer YOUR_TOKEN' }を含むInvoke-RestMethodのコードが生成されます。curl2codeは-H "Authorization: Bearer ..."--oauth2-bearerフラグの両方からBearerトークンを検出します。Basic authの場合は、-u user:passを使用してください。

PowerShellでContent-Typeヘッダーを設定する方法は?

curl2codeはcurl -H "Content-Type: application/json" URLを、適切なヘッダー-ContentType 'application/json'を含むInvoke-RestMethodのコードに変換します。-dデータの場合、curlはデフォルトでapplication/x-www-form-urlencodedを使用し、-Fフォームアップロードの場合はmultipart/form-dataを使用します。curl2codeはそれぞれを正しいInvoke-RestMethod APIにマッピングします。

便利なリンク

curl ガイド

curl を他の言語に変換