s

JSONP실례

서버 측(PHP)에서는 다음과 같이 JSON 데이터를 생성하고, 해당 데이터를 콜백 함수로 래핑합니다:

[code]
<?php
$data = array("key" => "value");
$json = json_encode($data);

$callback = $_GET['callback'];
echo $callback . '(' . $json . ');';
?>
[/code]

위 코드에서는 $data 배열을 JSON 형식으로 변환한 후, 클라이언트가 제공한 콜백 함수 이름($_GET['callback'])을 사용하여 데이터를 콜백 함수로 래핑한 결과를 출력합니다.

클라이언트 측(HTML)에서는 다음과 같이 JSONP 요청을 보내고 응답된 데이터를 처리하는 방법입니다:
[code]
<script>
function callbackFunction(data) {
console.log(data.key); // 결과: "value"
}
</script>
<script src="http://example.com/data.php?callback=callbackFunction"></script>
[/code]

클라이언트에서는 <script> 태그의 src속성에 서버의 PHP 파일 경로와 콜백 함수 이름을 포함한 URL을 지정합니다. 이렇게 하면 서버는 해당 PHP 파일을 실행하고, 응답된 데이터를 콜백 함수로 감싼 JavaScript 코드로 클라이언트에게 전송합니다. 클라이언트는 콜백 함수를 정의하고, 서버로부터 응답된 데이터를 처리할 수 있습니다.

JSONP를 사용하여 다른 도메인에서 데이터를 가져올 때에도 주의해야 합니다. 안전 상의 이슈가 있을 수 있으므로, 신뢰할 수 있는 소스에서만 JSONP를 사용하는 것이 좋습니다. 또한, 최근에는 CORS(Cross-Origin Resource Sharing)라는 표준 기술이 등장하여 JSONP보다 안전하고 유연한 방식으로 다른 도메인과의 데이터 교환을 지원합니다.

|
댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
PHP
[PHP]
2년 전 조회 790
JavaScript 2년 전 조회 1,403
PHP 2년 전 조회 870
JavaScript 2년 전 조회 684
PHP 2년 전 조회 728
jQuery 2년 전 조회 765
JavaScript 2년 전 조회 713
기타 2년 전 조회 1,175
기타 2년 전 조회 865
PHP 2년 전 조회 1,210
JavaScript 2년 전 조회 1,995
JavaScript 2년 전 조회 870
JavaScript 2년 전 조회 1,052
JavaScript
[JavaScript]
2년 전 조회 734
PHP 2년 전 조회 864
PHP 2년 전 조회 879
JavaScript 2년 전 조회 893
2년 전 조회 1,416
2년 전 조회 1,617
2년 전 조회 1,335
2년 전 조회 1,815
2년 전 조회 1,789
2년 전 조회 1,489
2년 전 조회 1,796
2년 전 조회 1,224
2년 전 조회 1,893
JavaScript 2년 전 조회 1,681
2년 전 조회 1,476
2년 전 조회 1,390
2년 전 조회 1,503
🐛 버그신고