我不能讓python lambda返回二進制數據。縮略圖圖像的節點模板工作正常,但我無法獲得python lambda的工作。以下是我的lambda相關行。 print("image_data " + image_64_encode)
行將base64編碼圖像打印到日誌。如何在Python中使用AWS中的lambda函數返回二進制數據?
def lambda_handler(event, context):
img_base64 = event.get('base64Image')
if img_base64 is None:
return respond(True, "No base64Image key")
img = base64.decodestring(img_base64)
name = uuid.uuid4()
path = '/tmp/{}.png'.format(name)
print("path " + path)
image_result = open(path, 'wb')
image_result.write(img)
image_result.close()
process_image(path)
image_processed_path = '/tmp/{}-processed.png'.format(name)
print("image_processed_path " + image_processed_path)
image_processed = open(image_processed_path, 'rb')
image_processed_data = image_processed.read()
image_processed.close()
image_64_encode = base64.encodestring(image_processed_data)
print("image_data " + image_64_encode)
return respond(False, image_64_encode)
def respond(err, res):
return {
'statusCode': '400' if err else '200',
'body': res,
'headers': {
'Content-Type': 'image/png',
},
'isBase64Encoded': 'true'
}
任何指向我在做什麼錯?
哪裏拉姆達? – Rahul
你有什麼解決方案嗎?我也有同樣的問題。 – onurdegerli