When generating a pre-signed URL for download and specifying response-content-disposition to set a target filename, the actual download does not contain the Content-Disposition header therefore the download file does not have the requested filename.

I have confirmed that this works corrected in S3 itself.

I'd be happy to explore a fix if anyone can point me in the right direction/location.
response = Response()
    exists, code = bucket_exists(bucket_name)
    if not exists:
        response.status_code = code
        return response
    cors = BUCKET_CORS.get(bucket_name)
    if not cors:
        cors = {
            'CORSConfiguration': []
        }
    body = xmltodict.unparse(cors)
    response._content = body
    response.status_code = 200
    return response
def set_cors(bucket_name, cors):
    response = Response()
    exists, code = bucket_exists(bucket_name)
    if not exists:
        response.status_code = code
        return response
    if not isinstance(cors, dict):
        cors = xmltodict.parse(cors)
    BUCKET_CORS[bucket_name] = cors
    response.status_code = 200
    return response
def delete_cors(bucket_name):