2012-02-14 4 views
0

파일 업로드를 처리하고 blobstore에 저장하기 위해 Google 애플리케이션 엔진에서 python을 사용하여 앱을 만들고 싶습니다.blobstore.create_upload_url을 사용하지 않고 Blobstore에 업로드

그러나 현재 blobstore는 파일 업로드 양식 게시에 대한 URL을 작성하기 위해 blobstore.create_upload_url을 사용해야합니다. 이후 다른 서버에서 업로드 오전, 내 질문은 blobstore.create_upload_url에서 해당 동적 URL을 사용하지 않고 gae blobstore 파일을 업로드 할 수 있습니까?

참고로, 다른 서버에서 업로드하기 전에 파이썬 스크립트에서 업로드 URL을 요청해도 괜찮습니다.하지만 추가 대기 시간이 생기고 원하는 결과가 아닙니다. 또한 나는이 파일을 http://code.google.com/intl/en/appengine/docs/python/blobstore/overview.html#Writing_Files_to_the_Blobstore에서 "file-like API"라고 불렀지 만 읽었을 때 그 부분을 다루지는 않았다.

또한 이전에 파일 업로드에 데이터 저장소를 사용하려했지만 최대 파일 크기는 1MB로 충분하지 않았습니다. 감사합니다. 감사합니다.

답변

5

정확하게 BLOBstore에 파일을 쓰는 방법은 다음과 같습니다. 1) create_upload_url을 사용하고 첨부 파일이있는 양식을 게시하는 방법, 2) API를 사용하여 직접 BLOBstore에 쓰는 방법 (대용량 파일의 경우 here)). 원격 서버에 업로드 할 수있게하려면

, 같은 두 가지 선택이있다 :

1) 원격 서버 최초 URL을 요청합니다. 이러한 URL을 반환하기위한 처리기가 있습니다. 이 URL을 사용하여 원격 서버는 올바르게 인코딩 된 POST 메시지를 작성하고이를 URL에 게시합니다.

2) blobstore 쓰기 API를 사용하여 직접 파일을 쓰는 앱 엔진 서버의 핸들러에 HTTP 매개 변수로 파일 데이터를 보냅니다. 요청 크기는 limited ~ 32MB이므로이 방법을 사용하여 작성할 수있는 최대 파일 크기는 약간 있습니다.

+0

그러나 접근 방식 2를 사용하는 경우 업로드의 크기 제한은 어떻게됩니까? – Tony

+0

접근법 # 2에 대한 제한으로 업데이트되었습니다. – mjibson

관련 문제