J'utiliseAws lambda bousille mon encodage
https://clifff.com/2015/10/01/2015-failed-experiments-with-aws-lambda/ + https://www.twilio.com/blog/2015/09/build-your-own-ivr-with-aws-lambda-amazon-api-gateway-and-twilio.html
pour créer un service de redimensionnement d'image sur aws lambda ... Je résolu la question du type de contenu le premier article a été bloqué à, mais l'encodage semble être une impasse ... toute aide serait grandement appréciée!
rubis
Base64.decode64("R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
-> image de travail
GIF89a\u0001\u0000\u0001\u0000\x80\u0000\u0000\u0000\u0000\u0000\xFF\xFF\xFF!\xF9\u0004\u0001\u0000\u0000\u0000\u0000,\u0000\u0000\u0000\u0000\u0001\u0000\u0001\u0000\u0000\u0002\u0001D\u0000;
passerelle api avec
$util.base64Decode("R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
-> image brisée
GIF89a\u0001\u0000\u0001\u0000�\u0000\u0000\u0000\u0000\u0000���!�\u0004\u0001\u0000\u0000\u0000\u0000,\u0000\u0000\u0000\u0000\u0001\u0000\u0001\u0000\u0000\u0002\u0001D\u0000;
Votre mode d'utilisation ne convient pas pour la combinaison de la passerelle API et Lambda. API Gateway est exclusivement un proxy ou un point de terminaison JSON/XML REST. Passer des charges utiles binaires à travers est un hack. Vous devriez plutôt stocker vos données binaires directement dans S3, puis déclencher la fonction Lambda via des notifications ou via la passerelle API. Rechercher d'autres questions ici pour en savoir plus à ce sujet, il a été répondu à plusieurs reprises. – kixorz
Je ne peux pas stocker dans s3 puisque c'est censé être généré des images. – grosser
Je comprends. Vous devez stocker le contenu binaire généré dans S3 et renvoyer la redirection 301 vers l'URL de l'objet S3. Vous ne pourrez pas renvoyer directement le contenu binaire de Lambda via API Gateway. – kixorz