MCPcopy
hub / github.com/minio/minio-go / getCanonicalRequest

Function getCanonicalRequest

pkg/signer/request-signature-v4.go:187–198  ·  view source on GitHub ↗

getCanonicalRequest generate a canonical request of style. canonicalRequest = <HTTPMethod>\n <CanonicalURI>\n <CanonicalQueryString>\n <CanonicalHeaders>\n <SignedHeaders>\n <HashedPayload>

(req http.Request, ignoredHeaders map[string]bool, hashedPayload string)

Source from the content-addressed store, hash-verified

185// <SignedHeaders>\n
186// <HashedPayload>
187func getCanonicalRequest(req http.Request, ignoredHeaders map[string]bool, hashedPayload string) string {
188 req.URL.RawQuery = strings.ReplaceAll(req.URL.Query().Encode(), "+", "%20")
189 canonicalRequest := strings.Join([]string{
190 req.Method,
191 s3utils.EncodePath(req.URL.Path),
192 req.URL.RawQuery,
193 getCanonicalHeaders(req, ignoredHeaders),
194 getSignedHeaders(req, ignoredHeaders),
195 hashedPayload,
196 }, "\n")
197 return canonicalRequest
198}
199
200// getStringToSign a string based on selected query values.
201func getStringToSignV4(t time.Time, location, canonicalRequest, serviceType string) string {

Callers 4

PreSignV4Function · 0.85
PreSignV4OutpostsFunction · 0.85
signV4Function · 0.85
setSeedSignatureMethod · 0.85

Calls 3

EncodePathFunction · 0.92
getCanonicalHeadersFunction · 0.85
getSignedHeadersFunction · 0.85

Tested by

no test coverage detected