2012-09-21 6 views
1

나는 많은 파일에 대한 링크가있는 Google 애플리케이션 엔진에서 웹 앱을 개발 중이며 모든 파일을 zip으로 다운로드 할 수있는 링크를 제공해야합니다.zip으로 모든 파일을 다운로드

내가 생각할 수있는 한 가지 방법은 gae 서버에서이 파일들을 모두 다운로드하고, 일부 자바 코드를 사용하여 압축 한 다음, gae 서버로 다시 압축을 풀고 사용자에게이 zip 파일을 다운로드하고 zip 파일을 삭제하라는 메시지를 보낸다. 서버에 저장합니다.

더 나은 솔루션이 있습니까? 외부 서비스를 사용하지 않고도 솔루션을 선호합니다.

하나씩 파일을 다운로드하고 자바 스크립트를 사용하여 클라이언트 측에서 압축 할 수 있습니까? Gmail의 다운로드 같은 모든 첨부 파일

+0

꽤 확실한 js는이 문제를 해결할 수 없습니다. JS는 일반적으로 로컬 파일 시스템에 액세스 할 수 없습니다. – scrappedcola

답변

1

에 대한

lookimg 자바 스크립트는 보안상의 이유로 인해 원하는 것을 수행 할 수있는 능력이 없습니다. 이전 접근법은 문제를 처리하는 데 적합합니다.

오히려 당신을 위해 그것을 압축하는 자바 코드를 사용하는 것보다, 난 당신이 단순히 시스템 호출을 사용하는 것이 좋습니다 것입니다 :

Runtime.getRunTime().exec("zip -r tmp.zip .") 

tmp.zip라는 아카이브에 런타임의 현재 디렉토리에있는 모든 파일을 압축합니다.

+0

이전 접근 방식은 시간이 많이 걸리므로 사용자는 다운로드까지 기다릴 필요가 있습니다. Gmail에서 모든 첨부 파일을 빠르게 다운로드 할 수 있습니다. – vishesh

관련 문제