MCPcopy Create free account
hub / github.com/coder/coder / forwardResp

Method forwardResp

aibridge/intercept/responses/base.go:433–451  ·  view source on GitHub ↗

forwardResp writes whole response as received to ResponseWriter

(w http.ResponseWriter)

Source from the content-addressed store, hash-verified

431
432// forwardResp writes whole response as received to ResponseWriter
433func (r *responseCopier) forwardResp(w http.ResponseWriter) error {
434 // no response was received, nothing to forward
435 if !r.responseReceived.Load() {
436 return nil
437 }
438
439 w.Header().Set("Content-Type", r.responseHeaders.Get("Content-Type"))
440 w.WriteHeader(r.responseStatus)
441
442 b, err := r.readAll()
443 if err != nil {
444 return xerrors.Errorf("failed to read response body: %w", err)
445 }
446
447 if _, err := w.Write(b); err != nil {
448 return xerrors.Errorf("failed to write response body: %w", err)
449 }
450 return nil
451}
452
453// deltaBuffer is a thread safe byte buffer
454// supports reading incremental data (added after last read)

Callers 3

ProcessRequestMethod · 0.95
ProcessRequestMethod · 0.80

Calls 8

readAllMethod · 0.95
SetMethod · 0.65
GetMethod · 0.65
WriteMethod · 0.65
LoadMethod · 0.45
HeaderMethod · 0.45
WriteHeaderMethod · 0.45
ErrorfMethod · 0.45