My lambda function is unable to unzip a file
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 25/100
Hướng nghiên cứu
Bắt đầu với hàm Lambda ghi file_content vào /tmp/file_path và so sánh các byte nhận được qua Postman với đầu vào cục bộ hoặc đầu vào trên Heroku. Xác minh archive đã lưu bằng lệnh gọi zipfile.ZipFile được hiển thị trước khi giải nén; hoàn thành khi cùng archive đó mở và giải nén thành công trong Lambda.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
I deployed a flask app to lambda that includes a function that unzip a small file (124ko), but nothing works as expected. The unzipping clearly fail and I can't find the reason.
2021-03-23T12:12:46.346+01:00 error [/tmp/39423ff39f7f4378a8f835a20fdcb688.zip]: missing 3183398882 bytes in zipfile
2021-03-23T12:12:46.346+01:00 (attempting to process anyway)
2021-03-23T12:12:46.346+01:00 error [/tmp/39423ff39f7f4378a8f835a20fdcb688.zip]: start of central directory not found;
2021-03-23T12:12:46.346+01:00 zipfile corrupt.
2021-03-23T12:12:46.346+01:00 (please check that you have transferred or created the zipfile in the
2021-03-23T12:12:46.346+01:00 appropriate BINARY mode and that you have compiled UnZip properly)
There is no problem when testing locally and the zip file is okay. So I guess the issue comes from lambda.
The code :
with open(file_path, "wb") as binary_file:
binary_file.write(file_content)
Expected behavior : The file should unzip without problem just as it does when the app runs locally or in heroku.
P.S. I am using postman for testing
EDIT : also tried to extract with zipfile
with zipfile.ZipFile('/tmp/myfile.zip', 'r') as z:
z.extractall(fil_dir)
and got the following error :
raise BadZipFile("Bad magic number for central directory")
Originally I was extracting with
os.system("unzip -qq %s -d %s" % (file_path,file_dir))
Any suggestion ?
- Ngôn ngữ chính
- JavaScript
- Star
- 11.5k
- Fork
- 4.4k
- Merge trung bình
- 2 giờ 55 phút
- Pull request đã merge (30 ngày)
- 3
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của serverless/examples
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 62/100
serverless/examples#404 ·
-
ENOTDIR error on starter project Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
serverless/examples#809 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 30/100
serverless/examples#793 · 1 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 20/100
serverless/examples#784 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
serverless/examples#782 ·
Tất cả issue của serverless/examples
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
mksglu/context-mode#1200 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
neondatabase/website#5944 ·
-
module: core
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
bigbluebutton/bigbluebutton#25849 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
jaegertracing/jaeger-ui#4506 ·