msg := &bytes.Buffer{} writer := multipart.NewWriter(msg) part, err := writer.CreatePart(textproto.MIMEHeader{ "Content-Type": {"text/plain; charset=utf-8"}, }) if err != nil { log.Fatal(err) } part.Write([]byte("Hello, world!")) writer.Close()
msg := &bytes.Buffer{} writer := multipart.NewWriter(msg) file, err := os.Open("/path/to/file") if err != nil { log.Fatal(err) } defer file.Close() part, err := writer.CreatePart(textproto.MIMEHeader{ "Content-Type": {"application/octet-stream"}, "Content-Disposition": {"form-data; name=\"file\"; filename=\"filename.txt\""}, }) if err != nil { log.Fatal(err) } io.Copy(part, file) writer.Close()In this example, we create a new multipart message writer and use the CreatePart method to create a new message part with a content type of "application/octet-stream". We also set the content disposition to "form-data; name=\"file\"; filename=\"filename.txt\"". We then copy the contents of a file to the part using the io.Copy function. The package library for the go mime.multipart package is "mime/multipart".