상세 컨텐츠

본문 제목

웹페이지 이미지 파일 다운로드를 강제로 진행 시키기

노드js·자바스크립트

by 김일국 2015. 8. 12. 19:06

본문

보통 PHP또는 JSP에서 HEADER 함수로 처리합니다.

참고로 이미지 소스 경로가 노출되지 않는 PHP소스도 올려 놓습니다. 참고하세요.

  download.php

 

아래 소스는 자바스크립트이기때문에 서버가 ASP,PHP,JSP에 상관없이 간단히 사용 가능합니다.

단, 이미지경로가 노출되기 때문에 보안적으로 좋지 않습니다만, 보안이 필요치 않는 곳에는 사용해도 괜찮을듯 합니다.

<!DOCTYPE html>

<html lang="ko">

<head>

<title>HTML5 Hello wrld</title>

<meta charset="UTF-8">

<script type="text/javascript">

function makeFrame(url,target) 

    ifrm = document.createElement( "IFRAME" ); 

    ifrm.setAttribute( "style", "display:none;" ) ;

    ifrm.setAttribute( "src", url ) ; 

    ifrm.setAttribute( "name", target) ; 

    ifrm.style.width = 0+"px"; 

    ifrm.style.height = 0+"px"; 

    document.body.appendChild( ifrm ) ; 

function removeiframe() {

var iframes = document.getElementsByTagName('iframe');

for (var i = 0; i < iframes.length; i++) {

   iframes[i].parentNode.removeChild(iframes[i]);

}

}

function SaveToDisk(fileURL, fileName) {

   // for non-IE
      if (!(window.ActiveXObject || "ActiveXObject" in window)) {
          var save = document.createElement('a');
          save.href = fileURL;
          save.target = '_blank';
          save.download = fileName || fileURL;
          var evt = document.createEvent('MouseEvents');
          evt.initMouseEvent('click', true, true, window, 1, 0, 0, 0, 0,
              false, false, false, false, 0, null);
          save.dispatchEvent(evt);
          (window.URL || window.webkitURL).revokeObjectURL(save.href);
      }
      // for IE
      else if ( window.ActiveXObject || "ActiveXObject" in window )     {
          makeFrame(fileURL,fileName);
          alert('"' + fileName +'" 이미지 파일을 다운로드 합니다.');
   var _window = window.open(fileURL, fileName);
          _window.document.close();
          _window.document.execCommand('SaveAs', true, fileName || fileURL)
          _window.close();
          removeiframe();
      }

}

</script>

</head>

<body>

<div>

<image src="/home/css/image/new-site/10.png" />

<span><a href="javascript:SaveToDisk('/home/css/image/new-site/10.png','나는 로봇');" title="로봇0 이미지 다운로드">Download</a></span>

</div>

<div>

<image src="/home/css/image/new-site/11.png" />

<span><a href="javascript:SaveToDisk('/home/css/image/new-site/11.png','너도 로봇');" title="로봇1 이미지 다운로드">Download</a></span>

</div>

<div>

<image src="/home/css/image/new-site/12.png" />

<span><a href="javascript:SaveToDisk('/home/css/image/new-site/12.png','우리 로봇');" title="로봇2 이미지 다운로드">Download</a></span>

</div>

</body>

</html>

download.php
0.0MB

관련글 더보기

댓글 영역