jQuery없이 네티브자바스크립트로 서버에 요청보내기5- 파일업로드
파일 업로드를 위해 필요한 <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개
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5006 | 기타 | 5년 전 | 1920 | ||
| 5005 | 기타 | 5년 전 | 2019 | ||
| 5004 | 기타 | 5년 전 | 2135 | ||
| 5003 | 기타 | 5년 전 | 2809 | ||
| 5002 | 기타 | 5년 전 | 2385 | ||
| 5001 | 기타 | 5년 전 | 2719 | ||
| 5000 | 기타 | 5년 전 | 4766 | ||
| 4999 | 기타 | 5년 전 | 2028 | ||
| 4998 | 기타 | 5년 전 | 2691 | ||
| 4997 | 기타 | 5년 전 | 2738 | ||
| 4996 | 기타 | 5년 전 | 2664 | ||
| 4995 | 기타 | 5년 전 | 2911 | ||
| 4994 | 기타 | 5년 전 | 2165 | ||
| 4993 | 기타 | 5년 전 | 2039 | ||
| 4992 | 기타 | 5년 전 | 1967 | ||
| 4991 | 기타 | 5년 전 | 1980 | ||
| 4990 | 기타 | 5년 전 | 2041 | ||
| 4989 | 기타 | 5년 전 | 2361 | ||
| 4988 | 기타 | 5년 전 | 2052 | ||
| 4987 | 기타 | 5년 전 | 2325 | ||
| 4986 | 기타 | 5년 전 | 2798 | ||
| 4985 | 웹서버 | 5년 전 | 4943 | ||
| 4984 | OS | 5년 전 | 3008 | ||
| 4983 | MySQL | 5년 전 | 2893 | ||
| 4982 | 기타 | 5년 전 | 2009 | ||
| 4981 | PHP | 5년 전 | 2653 | ||
| 4980 | 기타 | 5년 전 | 8971 | ||
| 4979 | 웹서버 | 5년 전 | 3074 | ||
| 4978 | 기타 | 5년 전 | 2050 | ||
| 4977 | PHP | 5년 전 | 3513 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기