반응형

jquery 로 iframe form submit ( sample 포함 )




특정 페이지를 submit(호출)하기 위해

jsp 에서 iframe 을 사용했는데

iframe 의 src 에 넣은 link가

하필 보안에 위배되는 주소가 되어버렸습니다.



jsp 에서 iframe 에 사용한 src 를 어떻게 숨길지 고민하다

jqeury 를 사용해서 해당 페이지를 호출 후 

삭제하는 로직을 넣어보기로 했습니다.



변경전 jsp 구조샘플

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>TEST</title>
<link rel="stylesheet" type="text/css" href="./css/style.css">
<script type="text/javascript" src="./js/jquery.js"></script>
<script type="text/javascript" src="./js/index.js"></script>
<form id="frm" method="post" target="cgi">
<div>
---중략---
</div>
</form>    
<iframe name="iFrm" style="display: none;" src="https://tistory.com"></iframe>


iframe 에서 src 로 입력한 부분이 소스보기시 노출되어 보안문제 발생!

과감히 iframe 태그를 삭제하고 js 파일에서 작성하도록 합니다.



index.js 에서 jquery 를 이용한 iframe 생성

function init() {
	var iframe = $('');
	$( "body" ).append(iframe);
	var src = "https://tistory.com";
	iframe.attr('src',src).load(function(){
						$('#iFrm').remove()
						});
}




body 에 onload event 를 처리한 function 에 아래내용을 넣어줬습니다.


iframe 태그를 load 한 후 바로 삭제 했으니 남아있는게 없게 되었습니다!





궁금한점 있으면 댓글 작성해주세요!

반응형
블로그 이미지

나남나여

일상 제품리뷰와 맛집/여행/사진을 좋아하고 IT 관련 프로그래밍 초급 & 고급 정보를 공유하는 블로그

,