으어어어어
655
2016-10-18 01:48:44 작성 2016-10-18 02:01:23 수정됨
3
2868

ck 에디터 파일 업로드시 404


ck 에디터 파일 업로드시 404 에러가 납니다


 $(function(){
	// ckeditor setting
       var ckeditor_config = {
            resize_enabled : false, // 에디터 크기를 조절하지 않음
            enterMode : CKEDITOR.ENTER_BR , // 엔터키를 <br> 로 적용함.
            shiftEnterMode : CKEDITOR.ENTER_P ,  // 쉬프트 +  엔터를 <p> 로 적용함.
            toolbarCanCollapse : true , 
            removePlugins : "elementspath", // DOM 출력하지 않음
            filebrowserUploadUrl: '${PATH}/board/img/upload.do', // 파일 업로드를 처리 할 경로 설정.

            // 에디터에 사용할 기능들 정의
            toolbar : [
              [ 'Source', '-' , 'NewPage', 'Preview' ],
              [ 'Cut', 'Copy', 'Paste', 'PasteText', '-', 'Undo', 'Redo' ],
              [ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'],
              [ 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock' ],
              '/',
              [ 'Styles', 'Format', 'Font', 'FontSize' ],
              [ 'TextColor', 'BGColor' ],
              [ 'Image', 'Flash', 'Table' , 'SpecialChar' , 'Link', 'Unlink']

            ]

          };

       var editor = null;
       jQuery(function() {
            // ckeditor 적용
            editor = CKEDITOR.replace( "BoardContentText" , ckeditor_config );
       });

 });


에러 구문은

ckeditor.js:533 POST http://localhost:8080/board/img/upload.do?CKEditor=BoardContentText&CKEditorFuncNum=0&langCode=ko 404 (Not Found)

이렇게 나오고요


실제로 url을 치고 들어가면


이런 형식으로 잘 나옵니다


인터넷에 검색해도 나오지가 않아서 질문 올려봅니다..

도와 주시면 감사하겠습니다


아래는 컨트롤러 소스 입니다

@RequestMapping(value="/board/img/upload.do", method=RequestMethod.POST)
	public void BoardImgUpload(HttpServletRequest request, HttpServletResponse response,
								@RequestParam(value="upload") MultipartFile upload) {
        response.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        
        OutputStream out = null;
        PrintWriter printWriter = null;
        
        try{
        	String fileName = upload.getOriginalFilename();
        	byte[] bytes = upload.getBytes();
        	String uploadPath = request.getSession().getServletContext().getRealPath("/")+"/upload/board/img/"+fileName;
        	out = new FileOutputStream(new File(uploadPath));
        	out.write(bytes);
        	String callback = request.getParameter("CKEditorFuncNum");
        	
        	printWriter = response.getWriter();
        	String fileUrl = request.getContextPath() + "/upload/board/img"+fileName;
        	
        	printWriter.println("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction("
                    + callback
                    + ",'"
                    + fileUrl
                    + "','이미지를 업로드 하였습니다.'"
                    + ")</script>");
        	
        	printWriter.flush();
        }catch(IOException e){
        	e.printStackTrace();
        }finally{
        	try{
        		if(out != null) out.close();
        		if(printWriter != null) printWriter.close();
        	}catch(IOException e){
        		e.printStackTrace();
        	}
        }
	}


인터넷에는 ckeditor image 404 error 로 검색했습니다

0
0
  • 답변 3

  • 으어어어어
    655
    2016-10-18 02:16:42

    //자답입니다

    현제 spring security를 사용중인데

    csrf 토큰을 파라미터로 보내주지 않아서 생긴 문제였습니다

    0
  • 너무어려웡
    502
    2017-04-17 22:28:37

    저도 지금 같은 부분 오류 나는데 어떻게 해결 하셨는지 알 수 있을까요 ㅠㅠ?

    0
  • 으어어어어
    655
    2017-04-18 10:18:06

    너무어려웡

    자답했다 시피 저는 spring security를 사용중이였고

    csrf 토큰을 파라미터로 보내주자 않아서 생긴 문제였습니다.


    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.