Skip to content

Commit 2336290

Browse files
fix(client): correctly set stream key for multipart
1 parent eca7429 commit 2336290

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

appdeployment.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,9 @@ func (r AppDeploymentNewParams) MarshalMultipart() (data []byte, contentType str
317317
buf := bytes.NewBuffer(nil)
318318
writer := multipart.NewWriter(buf)
319319
err = apiform.MarshalRoot(r, writer)
320+
if err == nil {
321+
err = apiform.WriteExtras(writer, r.ExtraFields())
322+
}
320323
if err != nil {
321324
writer.Close()
322325
return nil, "", err

internal/apiform/encoder.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -449,3 +449,17 @@ func (e *encoder) newMapEncoder(_ reflect.Type) encoderFunc {
449449
return e.encodeMapEntries(key, value, writer)
450450
}
451451
}
452+
453+
func WriteExtras(writer *multipart.Writer, extras map[string]any) (err error) {
454+
for k, v := range extras {
455+
str, ok := v.(string)
456+
if !ok {
457+
break
458+
}
459+
err = writer.WriteField(k, str)
460+
if err != nil {
461+
break
462+
}
463+
}
464+
return
465+
}

0 commit comments

Comments
 (0)