[덱스트업로드] 대용량 업로드 시 폼데이터를 처리하는 방법

DEXTUpload Pro Extension DEXTUpload Pro DEXTUploadX 제품을 통합하여

더욱 강력한 파일업로드 기능과 함께 웹하드 개념의 서비스를 구현할 수 있도록 합니다.

 

이 제품은 브라우저와 웹서버간의 업로드 용량제한 및 전송개념을 획기적으로 개선하여 시스템이 처리 가능한 범위내에서 

무제한 용량의 파일의 업로드가 가능해 졌으며, 파일전송 방식을 통합전송방식에서 개별전송방식으로 전환하여

일반적인 파일업로드 서비스 이외에도 웹하드 개념의 서비스로 확장할 수 있도록 합니다.

 

 

 

<현상(내용)>

DEXTUpload Pro Extension의 대용량 업로드 기능을 사용하여 파일을 업로드 할 경우

파일과 함께 전송된 폼데이터를 처리하는 방법입니다.

 

 

 <원인>

대용량 업로드, 대용량 이어올리기 시 내부적으로 서버 페이지를 여러번 요청하여 파일에 해당하는 폼데이터를 나누어 전송합니다.

 

이때 폼데이터는 최초 업로드 요청 시 한번만 전송됩니다. 

따라서 전송이 완료되는 uploadform.ResumeMode = “done” 시점에서 폼데이터는 이미 overwrite되어 사라지게 되는 것입니다.

 

최초 업로드 요청 시 폼데이터를 DB등에 임시 저장하였다가

업로드 완료( uploadform.ResumeMode = “done” )시점에서 해당 내용을 DB쪽에 접근하여 처리하거나

서버측 페이지가 아닌 클라이언트 측에서 폼데이터를 미리 처리하는 방법이 있습니다.

 

아래소스는 DEXTUpload Pro Extension의 DEXTUploadXEx샘플 중

 대용량업로드 샘플(LargeUpload)의 서버 페이지(LargeUpload.asp)를 참고로 설명된 예제 입니다.

 

예_)
if uploadform.ResumeMode = “configurefileinfo” or uploadform.ResumeMode = “attachfile” then

->대용량/ 이어올리기 모드 최초 업로드 발생 시점

 

…중략…

elseif uploadform.ResumeMode = “done” then
->대용량/이어올리기 완료 시점

 

…중략…

 
else
->대용량/이어올리기 모드가 아닌 일반 업로드 일 경우

 

…중략…

 

end if 

 

 

 

 

 

Similar Posts

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다