Click or drag to resize

HTTP 업로드

폼 기반의 파일 업로드의 원리와 TABS Upload 서버 컴포넌트의 역할에 대해 설명합니다.

폼 데이터 전송

폼 기반의 파일 업로드를 위해 인코딩 형식이 multipart/form-data인 HTML 폼을 만듭니다.

ASP
<form method="post" ENCTYPE="multipart/form-data" action="upload.asp">
    <input type="text" name="userName">
    <input type="file" name="uploadFile">
    <input type="submit" name="submit" value="Upload">
</form>

사용자는 웹 브라우저에 해당 폼을 로딩한 후 폼 요소에 값과 업로드 파일을 입력합니다.

입력이 끝났으면 Upload 버튼을 클릭합니다.

웹 브라우저는 입력한 폼 요소 데이터와 첨부 파일 데이터를 MIME 형식으로 인코딩한 후 HTTP를 통해 웹 서버로 전송합니다.

txt
POST /upload.asp HTTP/1.1
Accept-Language: ko
Content-Type: multipart/form-data; boundary=---------------------------7d1f5a80420
Content-Length: 5847
Cache-Control: no-cache

-----------------------------7d1f5a80420
Content-Disposition: form-data; name="userName"

Hong GilDong
-----------------------------7d1f5a80420
Content-Disposition: form-data; name="uploadFile"; filename="C:\hong.gif"
Content-Type: image/gif

[Binary Data]

-----------------------------7d1f5a80420
Content-Disposition: form-data; name="submit"

Submit
-----------------------------7d1f5a80420--
업로드 ASP 페이지 실행

IIS는 action에 명시된 업로드 처리 ASP 페이지를 실행시킵니다.

ASP 페이지에서는 업로드 데이터를 처리하기 위해 TABS Upload 오브젝트를 생성합니다.

Start 메서드를 호출하면 MIME 데이터를 수신하면서 해석합니다.

모든 업로드 데이터를 전송 받은 후 Form 오브젝트를 사용해 업로드된 데이터를 참조합니다.

ASP
Set Upload = Server.CreateObject("TABSUpload4.Upload")
Upload.Start "C:\Temp"

Response.Write Upload.Form("userName")
Upload.Form("uploadFile").Save