「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Golang で Gomultipart を使用してマルチパート HTTP リクエストを作成する方法?

Golang で Gomultipart を使用してマルチパート HTTP リクエストを作成する方法?

2024 年 11 月 16 日に公開
ブラウズ:374

How to Create Multipart HTTP Requests with Gomultipart in Golang?

Go でマルチパートを使用する方法

Golang のマルチパートは、マルチパート HTTP リクエストを作成するための強力なツールです。これは、テキストとファイルのコンテンツの両方を含むデータを送信する場合に特に便利です。

ソリューション

マルチパート フォーム リクエストを作成するには、次の手順に従います:

  1. インスタンス化bytes.Buffer および multipart.Writer オブジェクト。
  2. multipart.Writer を使用して、multipart.Part オブジェクトを、各部分に 1 つずつ作成します。 request.
  3. リクエストの Content-Type ヘッダーを Writer.FormDataContentType() によって返される値に設定します。
  4. リクエスト パーツのコンテンツを multipart.Writer.
  5. に書き込みます。
  6. writer.Close() を呼び出してリクエストを完了します。

Example

この例では、次のようなマルチパート混合リクエスト:

body := &bytes.Buffer{}
writer := multipart.NewWriter(body)

part, err := writer.CreatePart(textproto.MIMEHeader{"Content-Type": {"application/json"}})
if err != nil {
    // handle error
}

part.Write(jsonStr)

writer.Close()

req, err := http.NewRequest("POST", "blabla", body)
if err != nil {
    // handle error
}

req.Header.Set("Content-Type", "multipart/mixed; boundary=" writer.Boundary())

ボーナス ヒント: cURL を使用する

マルチパート リクエストを生成することもできます次のコマンドで cURL を使用します:

curl -F "field=value" -H "Content-Type: multipart/mixed; boundary=boundary" http://1.1.1.1/blabla
リリースステートメント この記事は次の場所に転載されています: 1729690430 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3