>  기사  >  웹 프론트엔드  >  아약스와 jsonp의 차이점은 무엇입니까? ajax와 jsonp의 차이점 소개

아약스와 jsonp의 차이점은 무엇입니까? ajax와 jsonp의 차이점 소개

不言
不言원래의
2018-10-16 09:56:102985검색

ajax와 jsonp는 모두 요청 방법인데 ajax와 jsonp의 차이점은 무엇인가요? 이 기사에서는 ajax와 jsonp의 차이점을 소개합니다. 관심 있는 친구는 한 번 살펴보세요.

우선, ajax와 jsonp는 데이터와 정보를 얻기 위해 백그라운드와 통신할 수 있지만 페이지를 부분적으로 새로 고치기 위해 전체 페이지를 새로 고칠 필요는 없다는 점을 알아야 합니다.

다음으로 ajax와 jsonp의 차이점을 살펴보겠습니다.

ajax와 jsonp의 차이점:

ajax은 http 요청을 보내 백그라운드와 비동기적으로 통신하는 기술입니다. 원칙은 xmlhttp 개체를 인스턴스화하고 이 개체를 사용하여 배경과 통신하는 것입니다.

전체 AJAX 요청에는 일반적으로 다음 단계가 포함됩니다.

(1) XMLHttpRequest 객체 인스턴스화

(2) 서버에 연결

(3) 요청 보내기

(4) 응답 데이터 받기

jsonp 은 도메인 간에 http 요청을 보낼 수 있고 ajax에 포함될 수 있는 A 데이터 통신 형식입니다. 원칙은 스크립트 태그를 사용하여 도메인 전체의 리소스를 연결하는 것입니다.

JSONP는 콜백 함수와 데이터 두 부분으로 구성됩니다. 콜백 함수는 일반적으로 브라우저에서 제어되며 매개변수로 서버에 전송됩니다. (물론 콜백 함수의 이름을 수정할 수도 있지만, 클라이언트와 서버는 일관성이 있어야 합니다.) 서버가 응답하면 서버는 함수와 데이터를 문자열로 결합하여 반환합니다.

JSONP의 요청 프로세스는 다음과 같습니다.

요청 단계: 브라우저는 스크립트 태그를 생성하고 해당 src 값을 할당합니다.

요청 보내기: 스크립트의 src에 값을 할당하면 브라우저가 요청을 시작합니다.

데이터 응답: 서버는 매개변수로 반환할 데이터와 함수 이름을 연결합니다(형식은 "jsonpCallback({name: 'abc'})")가 반환됩니다. 브라우저가 응답 데이터를 받으면 스크립트에 의해 요청이 시작되므로 jsonpCallback을 직접 호출하는 것과 같습니다. 메소드, 매개변수가 전달됩니다.

Finally: jsonp는 get 요청만 지원하고 ajax는 get 및 post 요청을 지원합니다.

위 내용은 아약스와 jsonp의 차이점은 무엇입니까? ajax와 jsonp의 차이점 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.