네이버 스마트에디터2 질문있습니다.(도저히 해결이 안됩니다....)
본문
function callAjaxForHTML5 (tempFile, sUploadURL){
console.log(1);
var oAjax = jindo.$Ajax(sUploadURL, {
type: 'xhr',
method : "post",
onload : function(res){ // 요청이 완료되면 실행될 콜백 함수
var sResString = res._response.responseText;
if (res.readyState() == 4) {
if(sResString.indexOf("NOTALLOW_") > -1){
var sFileName = sResString.replace("NOTALLOW_", "");
alert("이미지 파일(jpg,gif,png,bmp)만 업로드 하실 수 있습니다. ("+sFileName+")");
}else{
//성공 시에 responseText를 가지고 array로 만드는 부분.
makeArrayFromString(res._response.responseText);
}
}
},
timeout : 3,
onerror : jindo.$Fn(onAjaxError, this).bind()
});
oAjax.header("contentType","multipart/form-data");
oAjax.header("file-name",encodeURIComponent(tempFile.name));
oAjax.header("file-size",tempFile.size);
oAjax.header("file-Type",tempFile.type);
oAjax.request(tempFile);
}
위코드는 오픈소스인 네이버 스마트에디터2 코드의 일부분입니다.
// 서버에 파일 저장
InputStream in = request.getInputStream();
OutputStream out = new FileOutputStream(new File(saveFile));
byte bytes[] = new byte[Integer.parseInt(fileSize)];
int totalBytesRead = 0; // 읽은 총 바이트 수를 추적
// 입력 스트림에서 데이터를 읽기 전에 로그를 추가하여 데이터를 확인합니다.
int readBytes;
while ((readBytes = in.read(bytes)) != -1) {
totalBytesRead += readBytes;
log.info("Read {} bytes. Total bytes read so far: {}", readBytes, totalBytesRead);
out.write(bytes, 0, readBytes);
}
질문 내용 정리 : 멀티이미지 업로드를 구현 중입니다. 문제는 사진을 서버쪽에 저장을 하는데 계속 0KB의 사진만 저장이 됩니다..
3일 내내 관련 자료 찾고 해봤는데 도무지 해결이 안되네요...
혹시 해결하신분 있으신가요...?
답변을 작성하시기 전에 로그인 해주세요.