티스토리 뷰
데모 - http://demo.widgets.co.kr/?c=75/95/97
Ajax로 서버에서 데이터를 가져올 때 Json을 많이 사용합니다만, 같은 서버 내에서만 사용할 수 있습니다.
하지만 이녀석은 서로 다른 도메인에서 데이터를 요청하고 받을 수 있습니다.
이름하야 Jsonp입니다.
기본적인 동작은 요청자 - 답변자 사이에 키값을 주고 받아 요청자에게 정확하게 데이터를 주도록 합니다.
물론 보안이나 트레픽 누수에 관련하여 준비된 서비스에서만 사용하셔야합니다.
경우에 따라서는 아무나 막 쓰게 해서는 서버가 뻗어버릴 수도 있습니다.
이건 아무나 막 쓸수록 좋은 쿠폰 발생같은 서비스에 저는 자주 사용했습니다.
아래는 기본 예제 소스입니다.
<!--호출 페이지소스-->
<
script
type
=
"text/javascript"
>
<!--
var getJsonp = function(){
var dArray = null;
var btn = $(".btn");
btn.click(function(){
$.ajax({
dataType:"jsonp",
jsonp:"callback",
data:{id : "check", name: "테스트"},
success:function(callback){dArray=callback;},// 상단 선언된 변수에 데이터를 담는다.
complete:function(d){
alert(dArray[0].date);
alert(dArray[0].id);
alert(dArray[0].name);
alert(dArray[0].subject);
alert(dArray[0].content);
},
error:function(d){ alert("error "+d.responseText);}
});
return false;
});
}
$(function(){
getJsonp();
});
//-->
</
script
>
<
a
href
=
"javascript:void(0);"
class
=
"btn"
>테스트</
a
>
<!--응답페이지소스-->
<?//
http:
//demo.widgets.co.kr/_test/jsonp/test20160805.php
header('Cache-Control:no-cache');
header('Pragma:no-cache');
header('Content-Type:text/html;
charset
=
utf
-8');
echo $callback."(";
$rets['date'] = urlencode(date('Y-m-d H:i:s'));
$rets['id'] = urlencode($id);
$rets['name'] = urlencode($name);
$rets['subject'] = urlencode("제목입니다.");
$rets['content'] = urlencode("내용입니다.");
$return[] = $rets;
$return[] = $rets;
echo urldecode(json_encode($return));
echo ")";
?>
'Javascript' 카테고리의 다른 글
애드센스 넣으면 느려질 때 onLoad 후 광고 출력 하도록 적용 하는 방법 (0) | 2018.11.20 |
---|---|
Javascript 롤링(슬라이드) 소스 예제 (2) | 2016.08.09 |
레이어 팝업 예제 소스 (1) | 2016.08.01 |
PHP에서 json_encode로 Json Data 통신 기본형 예제 소스 (0) | 2012.07.13 |
스마트폰 터치, jquery touchmove 제어 (0) | 2012.03.20 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 안드로이드 개발
- apache
- 지역고유코드
- 파일삭제
- r
- Non-Interactive
- Android
- Android 개발
- 시군구 이름
- 법정동코드
- JavaScript
- MySQL
- HTML
- Linux
- 리눅스
- java
- install
- MariaDB
- c++
- 안드로이드
- rm으로 삭제
- Tomcat
- app
- API
- delete
- 앱개발
- LAPM
- 시도 이름
- 삭제한 파일 복원
- json
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
글 보관함