AWS: how to fix S3 event replacing space with '+' sign in object key names in json

后端 未结 7 1442
名媛妹妹
名媛妹妹 2020-12-31 00:23

I have a lamba function to copy objects from bucket \'A\' to bucket \'B\', and everything was working fine, until and object with name \'New Text Document.txt\' was created

7条回答
  •  清歌不尽
    2020-12-31 01:04

    Agree with Scott. for me create object event was appending %3 for semicolon : i have to replace it twice to get correct s3 url

    Python code:

        def lambda_handler(event, context):
        logger.info('Event: %s' % json.dumps(event))
        source_bucket = event['Records'][0]['s3']['bucket']['name']
        key_old = event['Records'][0]['s3']['object']['key']
        key_new = key_old.replace('%3',':')
        key = key_new.replace(':A',':')
        logger.info('key value')
        logger.info(key)
    

提交回复
热议问题