XSS 공격을 피해서.. 외부 웹사이트에서 HTML 을 jsonp 로 가져올 수가 있네요..
외부 URL 의 HTML 을 호출하는 쪽
<script>
function goPage(cp){
$.ajax({
type:'GET', // 생략 가능. $.getJSON() 과 달리 POST 방식 가능하나, POST 는 내부 call 만 된다..?
url : 'URL',
dataType : 'jsonp', // json 이라고 하면 도메인 안에서만 데이타 주고 받음
jsonp : 'callback',
data : 'page='+cp, // 페이지 네비게이션 상의 페이지, json 방식으로 세팅해도 됨. data:{a:b, c:d, ...}
success : function(data){
$('#id').html(data.page); // #id 는 html 가 넣어지는 곳, data.page 는 외부 URL 에 세팅한 key
},
error : function(data){
}
});
}
외부 URL. get 방식이다 보니, 4 kb 제한이 있어요.
<%@ page import="net.sf.json.JSONObject"
%><%
HashMap<String, Object> hm = new HashMap<String, Object>();
hm.put("page", "HTML내용"); // HTML내용은, 여기서 조립되는 것
out.print(request.getParameter("callback")+"("+JSONObject.fromObject(hm)+")");
%>
HashMap 은 try ~ finally 문을 통해 clear() 해 주는 것이 JVM GC 효율을 높입니다.
'Local Oriented > jQuery' 카테고리의 다른 글
고정 width 를 가진 웹페이지, meta viewport 로 모바일 기기별 해상도에 자동 맞추기 (5) | 2015.10.28 |
---|---|
ajax 에서 데이타가 넘어 오지 않을 때 dataType 을 text 로 해 보심이.. (0) | 2015.10.26 |
jsonp 호출하는 쪽과 호출되는 쪽 세팅 (0) | 2015.09.23 |
loading 로딩... (0) | 2015.08.22 |
on 을 했으면 off 를 해야.. (0) | 2015.07.13 |