Go でマルチパート フォーム フィールドに特定の Content-Type ヘッダーを設定するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-27 10:09:03
オリジナル
150 人が閲覧しました

How to Set Specific Content-Type Headers for Multipart Form Fields in Go?

Go でマルチパート フォーム フィールドの Content-Type ヘッダーを設定する

ファイルのアップロードでマルチパート フォームを送信する場合、コンテンツを指定する必要があります- 受信 API による適切な処理を保証するためのファイル フィールドのヘッダーを入力します。 net/http を使用してリクエスト全体のグローバル ヘッダーを設定するのは簡単ですが、マルチパート フォーム フィールドに個別のヘッダーを設定するのは難しいことがわかっています。

これを克服するには、カスタム関数を使用して、明示的なコンテンツを含むフォーム フィールドを作成できます。タイプ ヘッダー:

<code class="go">func CreateAudioFormFile(w *multipart.Writer, filename string) (io.Writer, error) {
  h := make(textproto.MIMEHeader)
  h.Set("Content-Disposition", fmt.Sprintf(`form-data; name="%s"; filename="%s"`, "file", filename))
  h.Set("Content-Type", "audio/wav;rate=8000")
  return w.CreatePart(h)
}</code>
ログイン後にコピー

この関数は、マルチパート ライターとファイル名を入力として受け取り、ファイル データを書き込むことができる io.Writer を返します。実装されたヘッダーは、必要に応じて Content-Disposition と Content-Type を設定します。

特定のマルチパート フォーム フィールドの Content-Type を設定するには、次のようにカスタム関数を使用します。

<code class="go">audioFile, _ := CreateAudioFormFile(writer, "helloWorld.wav")
io.Copy(audioFile, file)</code>
ログイン後にコピー

このアプローチにより、個々のマルチパート フォーム フィールドに Content-Type を効果的に設定できるため、開発者は特定のコンテンツ タイプ要件を持つファイルのアップロードをシームレスに処理できるようになります。

以上がGo でマルチパート フォーム フィールドに特定の Content-Type ヘッダーを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!