looks like setting ExposeHeaders has no effect on requests to s3 (headers such as `x-amz-version-id` don't reach the clients) for browser-based uploads. 

http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html
response = requests.put(url, data='something else', headers=headers, verify=False)
        self.assertTrue(response.ok)
        queue_attributes = self.sqs_client.get_queue_attributes(QueueUrl=queue_url,
                                                           AttributeNames=['ApproximateNumberOfMessages'])
        message_count = queue_attributes['Attributes']['ApproximateNumberOfMessages']
        
        self.assertEqual(message_count, '2')
        
        self.sqs_client.delete_queue(QueueUrl=queue_url)
        self.s3_client.delete_objects(Bucket=TEST_BUCKET_WITH_NOTIFICATION,
                                 Delete={'Objects': [{'Key': key_by_path}, {'Key': key_by_host}]})
        self.s3_client.delete_bucket(Bucket=TEST_BUCKET_WITH_NOTIFICATION)
    def generate_large_file(self, size):
        
        filename = 'large_file_%s' % uuid.uuid4()
        f = open(filename, 'wb')
        f.seek(size - 1)
        f.write(b'\0')
        f.close()
        return open(filename, 'r')
    def test_s3_upload_fileobj_with_large_file_notification(self):
        
        queue_url = self.sqs_client.create_queue(QueueName=TEST_QUEUE_FOR_BUCKET_WITH_NOTIFICATION)['QueueUrl']
        queue_attributes = self.sqs_client.get_queue_attributes(QueueUrl=queue_url, AttributeNames=['QueueArn'])
        
        self.s3_client.create_bucket(Bucket=TEST_BUCKET_WITH_NOTIFICATION)
        self.s3_client.put_bucket_notification_configuration(Bucket=TEST_BUCKET_WITH_NOTIFICATION,
            NotificationConfiguration={'QueueConfigurations': [
                {'QueueArn': queue_attributes['Attributes']['QueueArn'],
                 'Events': ['s3:ObjectCreated:*']}]})