func preAuthQuery()

in Sources/OSS/Signer/SignerV1.swift [86:107]


    func preAuthQuery(request: inout RequestMessage, context: inout SigningContext) {
        guard let credentials = context.credentials else {
            return
        }
        let expirationTime = context.expirationTime ?? Date().addingTimeInterval(context.clockOffset ?? 0).addingTimeInterval(15 * 60)
        let expiration = Int(expirationTime.timeIntervalSince1970)
        context.expirationTime = expirationTime

        var queryItems: [URLQueryItem] = []
        if let securityToken = credentials.securityToken {
            queryItems.append(URLQueryItem(name: "security-token", value: securityToken.urlEncode()))
        }
        request.requestUri = request.requestUri.appending(queryItems)

        let stringToSign = buildStringToSign(request: request,
                                             resourcePath: resourcePath(bucket: context.bucket, key: context.key),
                                             date: "\(expiration)",
                                             headers: request.headers,
                                             subResource: context.subResource)
        context.stringToSign = stringToSign
        context.dateToSign = "\(expiration)"
    }