분류 php

ReactPHP를 사용하여 HTTP API에서 데이터 스크랩

컨텐츠 정보

  • 조회 535 (작성일 )

본문

이것은 ReactPHP를 활용하는 미들웨어를 구축하여 API에서 데이터를 소비하고 정규화 한 다음 JSON : API를 통해 해당 데이터를 Drupal에 푸시하는 방법을 자세히 설명하는 두 블로그 중 첫 번째 블로그입니다. 

이 예에서는 PokéAPI에서 데이터를 가져옵니다. 두 번째 블로그 게시물에서는 데이터를 가져와 Drupal 사이트에 Pokémon 노드를 만듭니다.


https://mglaman.dev/blog/using-reactphp-consume-data-http-api


미들웨어의 목적은 이 로직을 Drupal 코드베이스에 넣는 것을 피하는 것입니다. Drupal은 데이터를 소비하고 데이터를 처리하여 콘텐츠를 생성 할 수 있는 놀랍도록 강력한 Migration API를 제공합니다. 내가 작업 한 모든 Drupal 사이트 (Drupal 8 베타 시절부터)는 마이그레이션 시스템을 사용하여 원격 API에서 CSV 또는 JSON을 통해 콘텐츠를 가져 왔습니다. 하나.


즉, Drupal 개발자가 되어야 이해하거나 그렇지 않은 경우 학습 곡선을 거쳐야 합니다. 일반 미들웨어는 모든 팀이 코드를 제어하고 유지할 수 있음을 의미합니다. 여러분이 알아야 할 것은 PHP뿐입니다.


왜 XYZ가 아닌 ReactPHP입니까? 


하지만 왜 ReactPHP일까요? ReactPHP는 이벤트 루프 라이브러리를 기반으로 이벤트 중심 애플리케이션을 위한 저수준 라이브러리를 제공합니다. Rust에 익숙하다면 Tokio 런타임과 비슷합니다. Node.js에는 이벤트 루프 런타임이 내장되어 있습니다.


원격 API에서 데이터를 사용하려면 시간이 많이 걸립니다. 특히 프로세스가 동기식 인 경우 :


  • Make a request to the API
  • Wait for the request to finish
  • Parse the response
  • Handle the response data
  • Repeat

많은 HTTP 요청이 전송되고 응답이 처리됩니다. 여러 번 리소스 모음에서 API를 입력 한 다음 해당 리소스에 대한 추가 정보를 가져와야 합니다. ReactPHP를 사용하면 비 차단 방식으로 각 요청을 처리하여 전체 프로세스의 속도를 높일 수 있습니다.


-----