자바스크립트/Node.js 샘플

내 프로젝트에서 gtfs-realtime-bindings자바스크립트 Node.js 클래스를 사용하려면 먼저 Node.js npm 패키지를 설치해야 합니다.

npm install gtfs-realtime-bindings

이러한 바인딩은 Node.js 환경에서 사용하도록 구성되었지만, 약간만 손을 보면 자바스크립트 환경에서도 사용할 수 있습니다.

아래의 Node.js 코드 스니펫은 GTFS 실시간 데이터 피드를 특정 URL에서 다운로드하여 FeedMessage(GTFS 실시간 스키마의 루트 유형)로 파싱하는 과정을 반복하면서 결과를 도출하는 것을 나타냅니다.

var GtfsRealtimeBindings = require('gtfs-realtime-bindings');
var request = require('request');

var requestSettings = {
  method: 'GET',
  url: 'URL OF YOUR GTFS-REALTIME SOURCE GOES HERE',
  encoding: null
};
request(requestSettings, function (error, response, body) {
  if (!error && response.statusCode == 200) {
    var feed = GtfsRealtimeBindings.FeedMessage.decode(body);
    feed.entity.forEach(function(entity) {
      if (entity.trip_update) {
        console.log(entity.trip_update);
      }
    });
  }
});

자세한 내용은 자바스크립트/Node.js 프로젝트 페이지를 참고하세요.