>  기사  >  백엔드 개발  >  PHP 크롤러: AJAX 및 JSONP를 사용하여 JSON 데이터 구문 분석

PHP 크롤러: AJAX 및 JSONP를 사용하여 JSON 데이터 구문 분석

WBOY
WBOY원래의
2023-06-13 10:34:521637검색

인터넷의 대중화로 인해 데이터 수집 및 처리가 점점 더 중요해졌습니다. 그 중 크롤러 프로그램을 통해 특정 웹사이트 데이터를 획득하려는 요구도 증가하고 있습니다. 이 문서에서는 PHP 크롤러를 사용하여 AJAX 및 JSONP를 통해 JSON 데이터를 구문 분석하는 방법을 설명합니다.

  1. AJAX 소개

AJAX(Asynchronous Javascript And XML)는 페이지를 다시 로드하지 않고 백그라운드에서 웹 사이트 콘텐츠를 비동기적으로 업데이트하는 기술을 말합니다. AJAX 기술을 통해 웹페이지를 더욱 매끄럽고 응답성이 향상됩니다.

  1. JSONP 소개

JSONP(JSON with Padding)는 도메인 간 데이터 요청 기술입니다. 원칙은 스크립트 태그의 src 속성이 브라우저의 동일 출처 정책에 의해 제한되지 않는다는 사실을 활용하고, 얻을 데이터를 콜백 함수의 매개변수로 전달하여 도메인 간 요청 및 참조를 달성하는 것입니다. 데이터.

  1. jQuery 라이브러리 소개

AJAX 및 JSONP 코드 작성을 시작하기 전에 먼저 jQuery 라이브러리를 소개해야 합니다. HTML 페이지 헤드에 다음 코드를 추가하면 됩니다.

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  1. AJAX를 사용하여 JSON 데이터 요청

다음은 AJAX를 사용하여 JSON 데이터를 요청하는 코드 예제입니다.

$.ajax({
    url: 'http://example.com/json_data',
    type: 'GET',
    dataType: 'json',
    success: function(data) {
        // 处理获取到的 JSON 数据
    },
    error: function() {
        // 请求失败的处理
    }
});

그 중, url 매개변수는 요청될 JSON 데이터를 지정합니다. dataType 매개변수는 응답 데이터 유형을 지정합니다. 여기서는 성공 콜백 함수가 오류 콜백 함수를 처리하는 데 사용됩니다. 요청 실패를 처리하는 데 사용됩니다.

성공 콜백 함수에서는 jQuery에서 제공하는 메소드를 사용하여 얻은 JSON 데이터를 처리할 수 있습니다. 예를 들어 다음과 같이 얻은 데이터를 통해 웹 페이지의 콘텐츠를 업데이트할 수 있습니다.

$.ajax({
    url: 'http://example.com/json_data',
    type: 'GET',
    dataType: 'json',
    success: function(data) {
        $('#content').html(data.content);
    },
    error: function() {
        $('#content').html('请求失败');
    }
});
  1. JSONP를 사용하여 JSON 데이터 요청

다음은 JSONP를 사용하여 JSON 데이터를 요청하는 코드 예제입니다.

$.ajax({
    url: 'http://example.com/json_data',
    data: {callback: 'handleResponse'},
    dataType: 'jsonp',
    jsonp: false,
    jsonpCallback: 'handleResponse'
});

function handleResponse(data) {
    // 处理获取到的 JSON 数据
}

그 중에서 data 매개변수는 콜백 콜백 함수를 지정합니다. name은 응답 데이터의 유형을 지정합니다. 여기서는 JSONP로 지정됩니다. jsonp 매개변수는 JSONP를 활성화할지 여부를 지정합니다. 여기서는 jsonpCallback 매개변수로 지정합니다. 콜백 함수.

handleResponse 콜백 함수에서는 획득한 JSON 데이터를 처리에 사용할 수 있습니다. 예를 들어 웹페이지의 콘텐츠는 다음과 같이 얻은 데이터를 통해 업데이트될 수 있습니다.

function handleResponse(data) {
    $('#content').html(data.content);
}

JSONP 요청에서 서버는 콜백 함수 이름을 괄호로 묶은 JSON 데이터를 반환해야 한다는 점에 유의해야 합니다. as:

handleResponse({"content": "这是要获取的数据"});
  1. 결론

이 기사에서는 AJAX 및 JSONP 기술을 사용하여 JSON 데이터를 구문 분석하는 방법을 소개합니다. AJAX 및 JSONP를 통해 JSON 데이터를 얻으면 데이터 수집 및 처리가 더욱 편리하고 빨라질 수 있습니다. 독자가 JSON 데이터 수집 및 처리 요구 사항이 있는 경우 이 문서에 소개된 방법을 사용하여 이를 달성할 수 있습니다.

위 내용은 PHP 크롤러: AJAX 및 JSONP를 사용하여 JSON 데이터 구문 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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