Я пытаюсь использовать https://github.com/dcodeIO/ProtoBuf.js для анализа триментов. данные gtf.
Вот код, который у меня есть до сих пор, он правильно анализирует файл .proto и создает билдер и имеет все ожидаемые свойства и методы, он выдает ошибку, когда я пытаюсь декодировать любые данные с его помощью.
Error: Data must be corrupt: Buffer overrun
файл прототипа взят с сайта https://developers.google.com/transit/gtfs-realtime/gtfs-realtime-proto
var ProtoBuf = require('protobufjs')
, request = require('request')
var transit = ProtoBuf.protoFromFile('gtfs-realtime.proto').build('transit_realtime')
request('http://developer.trimet.org/ws/V1/FeedSpecAlerts/?appID=618F30BB3062F39AF24AED9EC', parse)
function parse(err, res, body) {
try {
console.log(transit.FeedMessage.decode(res.body))
} catch(e) {
console.log(e)
}
}
Благодаря Брайану Феррису я смог разобрать первую часть заголовка gtfs_realtime_version: "1"
, но синтаксический анализатор не работает со следующим компонентом (отметка времени uint64)
Благодаря