테스트 사이트 - 개발 중인 베타 버전입니다

jQuery없이 네티브자바스크립트로 서버에 요청보내기5- 파일업로드

· 2년 전 · 595 · 1

파일 업로드를 위해 필요한 <input type="file" id="test-input"> 을 작성합니다.

jQuery에서 파일업로드를 어떻게 하는지 먼저 보겠습니다.

[code]

var file = $('#test-input')[0].files[0],

    formData = new FormData();

formData.append('file', file);

$.ajax('myserver/uploads', {

    method: 'POST',

    contentType: false,

    processData: false,

    data: formData

});

또는

var file = $('#test-input')[0].files[0];

$.ajax('myserver/uploads', {

    method: 'POST',

    contentType: file.type,

    processData: false,

    data: file

});

[/code]

 

XMLHttpRequest 기능을 이용한 파일업로드입니다.

[code]

var formData = new FormData(),

    file = document.getElementById('test-input').files[0],

    xhr = new XMLHttpRequest();

formData.append('file', file);

xhr.open('POST', 'myserver/uploads');

xhr.send(formData);

 

또는

 

var file = document.getElementById('test-input').files[0],

    xhr = new XMLHttpRequest();

xhr.open('POST', 'myserver/uploads');

xhr.setRequestHeader('Content-Type', file.type);

xhr.send(file);

[/code]

보시는거처럼 jQuery의 파일업로드는 사실상 XMLHttpRequest를 래퍼한것입니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

2년 전
sir에 불법사이트 만들던 조선족이 등장했다면서요?

게시글 목록

번호 제목
17043
17042
17025
17015
17001
16998
16994
16988
16985
16983
16981
16979
16978
16976
16968
16967
16957
16956
16955
16951
16950
16949
16932
16930
16913
16909
16906
16905
16904
16894