MCPcopy
hub / github.com/connectrpc/connect-go / validateResponse

Method validateResponse

protocol_connect.go:656–681  ·  view source on GitHub ↗
(response *http.Response)

Source from the content-addressed store, hash-verified

654}
655
656func (cc *connectStreamingClientConn) validateResponse(response *http.Response) *Error {
657 if response.StatusCode != http.StatusOK {
658 return errorf(httpToCode(response.StatusCode), "HTTP status %v", response.Status)
659 }
660 if err := connectValidateStreamResponseContentType(
661 cc.codec.Name(),
662 cc.spec.StreamType,
663 getHeaderCanonical(response.Header, headerContentType),
664 ); err != nil {
665 return err
666 }
667 compression := getHeaderCanonical(response.Header, connectStreamingHeaderCompression)
668 if compression != "" &&
669 compression != compressionIdentity &&
670 !cc.compressionPools.Contains(compression) {
671 return errorf(
672 CodeInternal,
673 "unknown encoding %q: accepted encodings are %v",
674 compression,
675 cc.compressionPools.CommaSeparatedNames(),
676 )
677 }
678 cc.unmarshaler.compressionPool = cc.compressionPools.Get(compression)
679 mergeHeaders(cc.responseHeader, response.Header)
680 return nil
681}
682
683type connectUnaryHandlerConn struct {
684 spec Spec

Callers

nothing calls this directly

Calls 9

errorfFunction · 0.85
httpToCodeFunction · 0.85
getHeaderCanonicalFunction · 0.85
mergeHeadersFunction · 0.85
NameMethod · 0.65
ContainsMethod · 0.65
CommaSeparatedNamesMethod · 0.65
GetMethod · 0.65

Tested by

no test coverage detected