programing

JSONP는 서버 변경이 필요합니까?

mbctv 2023. 4. 1. 09:50
반응형

JSONP는 서버 변경이 필요합니까?

jsonp는 같은 원산지 정책을 회피하기 위한 기술인 것으로 알고 있습니다.스크립트 태그는 SO 정책에서 제외되므로 기본적으로 스크립트 태그에서 json serving 서버 끝점을 참조합니다.

질문입니다. 서버에 json을 제공하는 엔드포인트가 있다고 가정할 때 클라이언트에서 jsonp를 사용하기 위해 서버에서 필요한 수정이 있습니까?

난 아니라고 생각하지만 확실히 하고 싶어...

네, JSONP는 렌더링할 때 약간 다르기 때문에 서버가 지원해야 합니다.

JSON은 다음과 같습니다.

{ "name": "value" }

JSONP는 다음과 같습니다.

functionName({ "name": "value" });

사용하고 있는 것이 모두 지원 대상이지만, JSON만을 지원하는 것은 아닙니다.서버가 요구를 수신했을 때, 예를 들면 다음과 같습니다.http://example.com/json?callback=functionName페이지 내 표시는 다음과 같기 때문에, 상기의 렌더링은 다음과 같습니다.

<script type="text/javascript" src="http://example.com/json?callback=functionName"></script>

이는 실행 중인 것을 반환해야 함을 의미합니다. 예를 들어, 이는 유효합니다.

<script type="text/javascript">
  functionName({ "name": "value" });
</script>

서버가 JSONP를 지원하지 않는 경우 실질적으로 다음과 같습니다.

<script type="text/javascript">
  { "name": "value" }
</script>

유효한 JavaScript가 아니기 때문에 구문 오류가 발생합니다.

언급URL : https://stackoverflow.com/questions/3295692/does-jsonp-require-server-modifications

반응형