Rumah > pembangunan bahagian belakang > Golang > Cara Membina Permintaan Berbilang Bahagian dengan Jenis Mime dalam Go

Cara Membina Permintaan Berbilang Bahagian dengan Jenis Mime dalam Go

Barbara Streisand
Lepaskan: 2024-10-24 03:21:02
asal
217 orang telah melayarinya

How to Construct Multipart Requests with Mime Types in Go

Permintaan Berbilang Bahagian dalam Go

Membuat permintaan berbilang bahagian dalam Go boleh menjadi mencabar, terutamanya apabila mematuhi format permintaan tertentu. Untuk memahami cara menggunakan permintaan berbilang bahagian dengan berkesan, mari pertimbangkan contoh permintaan sasaran dalam bentuk:

POST /blabla HTTP/1.1
Host: 2.2.2.2
Authorization: moreblabla Content-Type: multipart/mixed; boundary=--rs0q5Jq0M2Yt08jU534d1q Content-Length: 347
Node: 1.1.1.1.1
--rs0q5Jq0M2Yt08jU534d1q Content-Type: application/json
{"hello" : "world"}
--rs0q5Jq0M2Yt08jU534d1q
Salin selepas log masuk

Sebelum ini, percubaan telah dibuat untuk menjana permintaan sedemikian menggunakan multipart.NewWriter dan penciptaan bahagian lalai , yang membawa kepada isu dengan pengecaman kandungan. Untuk menangani perkara ini, pendekatan berikut boleh digunakan:

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

// Create the part with the appropriate mime type
part, _ := writer.CreatePart(textproto.MIMEHeader{"Content-Type": {"application/json"}})
part.Write(jsonStr)

writer.Close()

req, _ := http.NewRequest("POST", "blabla", body)
req.Header.Set("Content-Type", "multipart/mixed; boundary="+writer.Boundary())
Salin selepas log masuk

Dengan menyatakan jenis kandungan semasa membuat bahagian, permintaan boleh mematuhi format yang diharapkan dan berjaya menghantar data yang diperlukan.

Atas ialah kandungan terperinci Cara Membina Permintaan Berbilang Bahagian dengan Jenis Mime dalam Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan