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

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

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

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

본문

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

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


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
});

 

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


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);

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

추천
1

댓글 1개

전체 5,352
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT