JSONP
CORS가 활성화 되기 이전의 데이터 요청 방법으로, 다른 도메인으로부터 데이터를 가져오기 위해 사용하는 방법
동작 방식
- 웹 페이지에 동적으로
<script>
태그를 추가하고, 해당 스크립트의 소스로 원격 서버의 URL을 지정 - 원격 서버에서는 해당 URL로 요청을 받아들이고, JSONP 콜백 함수를 포함하여 응답 데이터를 전송
- 웹 페이지는 콜백 함수를 정의하고, 서버에서 전달된 응답 데이터를 해당 함수의 매개변수로 처리하여 사용
한계 및 취약점
- XSS(Cross-Site Scripting) 공격에 취약하며, 서버와의 통신을 위해 제 3자 코드를 실행
<script>
태그를 이용하기 때문에 오직 GET 요청만 가능
여러 보안상 이슈로 인하여 W3C에서는 2009년 채택된 CORS 방식의 HTTP 통신을 권장