2011-10-26 9 views
2

수백 개의 객체가 포함 된 Amazon S3에 버킷이 있습니다. 나는이 모든 개체를 나열하고 html로 다운로드 개체 링크가있는 웹 페이지를 가지고 있습니다.S3에서 버킷에있는 객체 목록 다운로드

예상대로 작동하며 각 개체를 개별적으로 다운로드 할 수 있습니다.

각 링크 옆에 체크 박스를 제공하면 개체 그룹을 선택한 다음 다운로드 한 개체 만 허용 할 수 있습니까?

명확하게 말하면 항목 1, 2 및 7을 선택하고 다운로드 링크를 클릭하면 해당 객체 만 다운로드됩니다. 이것이 어떻게 효과가 있을지 모르겠지만이 파일은 한 번에 하나씩 압축 파일 일 수 있습니다.

나는 이것을 코딩 할 수 있지만 어떻게 작동 할 것인가에 대해 고심하고있다 - 그래서 프로세스 설명은 환영 받는다. 웹 응용 프로그램이 PHP이지만 파이썬이나 루비를 고려할 수 있습니다.

답변

3

해결하기가 어렵습니다.

S3는 '적절한'파일 조작을 허용하지 않으므로 한 번 다운로드 할 수 없습니다. 브라우저에서 한 번에 하나의 URL을 다운로드 할 수 있습니다. 물론 다운로드 관리자를 사용하여 수동으로 다운로드를 대기하는 사용자를 막을 수있는 방법은 없지만이를 도와 줄 수있는 방법은 없습니다.

그래서 서버 측 솔루션이 남아 있습니다. S3에서 서버로 파일을 다운로드하고 zip을 클라이언트에 전달하기 전에 압축해야합니다. 안타깝게도 파일의 수와 크기에 따라 시간이 오래 걸릴 수 있으므로 파일 준비가 완료되었음을 알리는 알림 시스템이 필요합니다.

또한 서버가 EC2에서 실행되고 있지 않으면 대역폭 요금을 지불하기 위해 두 번 지불했을 수 있습니다. S3를 서버에 연결하고 서버를 클라이언트에 연결하십시오.

+0

감사합니다. Geoff. 나는 같은 생각을 가지고 있었다. 예상보다 훨씬 복잡한 해결책으로 변모했습니다. – 32423hjh32423