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년 전 조회 801
JavaScript 2년 전 조회 1,418
PHP 2년 전 조회 881
JavaScript 2년 전 조회 710
PHP 2년 전 조회 744
jQuery 2년 전 조회 790
JavaScript 2년 전 조회 722
기타 2년 전 조회 1,186
기타 2년 전 조회 884
PHP 2년 전 조회 1,223
JavaScript 2년 전 조회 2,007
JavaScript 2년 전 조회 881
JavaScript 2년 전 조회 1,066
JavaScript
[JavaScript]
2년 전 조회 744
PHP 2년 전 조회 873
PHP 2년 전 조회 893
JavaScript 2년 전 조회 910
2년 전 조회 1,422
2년 전 조회 1,629
2년 전 조회 1,342
2년 전 조회 1,827
2년 전 조회 1,796
2년 전 조회 1,501
2년 전 조회 1,806
2년 전 조회 1,230
2년 전 조회 1,902
JavaScript 2년 전 조회 1,700
2년 전 조회 1,490
2년 전 조회 1,412
2년 전 조회 1,520
🐛 버그신고