ホームページ > バックエンド開発 > Golang > `mime/multipart` と `http` を使用して Go でマルチパート フォームの送信を処理する方法は?

`mime/multipart` と `http` を使用して Go でマルチパート フォームの送信を処理する方法は?

Patricia Arquette
リリース: 2024-11-26 09:41:14
オリジナル
787 人が閲覧しました

How to Handle Multipart Form Submissions in Go using `mime/multipart` and `http`?

Go パッケージmime/multipart および http を使用したマルチパート フォームの送信

マルチパート フォームを作成する場合、mime/multipart および http パッケージを使用できます囲碁で。サンプル HTML フォームがここに提供されています。

<form action="/multipart" enctype="multipart/form-data" method="POST">
  <label for="file">Please select a File </label>
  <input>
ログイン後にコピー

Go では、次のアプローチを使用できます。

var buffer bytes.Buffer
w := multipart.NewWriter(&buffer)
// Write fields and files
w.CreateFormField("input1")
w.WriteField("input1", "value1")
w.CreateFormFile("file", "filename.dat")
// Create a reader to read the file
resp, err := http.Post(url, w.FormDataContentType(), &buffer)
ログイン後にコピー

ファイルを取得するには、Reader が必要です。その方法は次のとおりです。

// Upload file to google code
func Upload(tarball string) (err os.Error) {
    // ... (code omitted)
    // Create file field
    fw, err := w.CreateFormFile("upload", tarball)
    // ... (code omitted)
    // Write file field from file to upload
    _, err = io.Copy(fw, fd)
    // ... (code omitted)
    return err
}
ログイン後にコピー

このソリューションは、指定されたパッケージを使用して Go でマルチパート フォームを送信するための包括的なアプローチを提供します。

以上が`mime/multipart` と `http` を使用して Go でマルチパート フォームの送信を処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート