콘텐츠로 이동

StAX-XML - 고성능 JavaScript XML 파서 라이브러리

JavaScript & TypeScript용 고성능 스트리밍 XML 파서 - 유니버설 플랫폼 지원

🚀 고성능

스트리밍 지원으로 속도와 낮은 메모리 사용량을 위해 최적화됨

🔄 풀 기반 파싱

대용량 XML 파일의 메모리 효율적인 처리를 위한 스트림 기반 접근법

🌐 범용 호환성

웹 표준 API를 사용하여 Node.js, Bun, Deno 및 웹 브라우저에서 작동

📝 TypeScript 지원

포괄적인 타입 정의와 함께 완전한 TypeScript 지원

Terminal window
# npm
npm install stax-xml
# yarn
yarn add stax-xml
# pnpm
pnpm add stax-xml
# bun
bun add stax-xml
# deno
deno add npm:stax-xml
import { StaxXmlParser, XmlEventType } from 'stax-xml';
const xmlContent = '<root><item>안녕하세요</item></root>';
const stream = new ReadableStream({
start(controller) {
controller.enqueue(new TextEncoder().encode(xmlContent));
controller.close();
}
});
async function parseXml() {
const parser = new StaxXmlParser(stream);
for await (const event of parser) {
console.log(event);
}
}
parseXml();

기존의 XML-to-JSON 매퍼와 달리, StAX-XML은 스트리밍이나 직접 문자열 처리를 통해 XML 파일을 효율적으로 처리하면서 XML 데이터를 원하는 모든 사용자 정의 구조로 매핑할 수 있습니다.

  • 완전 비동기: 대용량 XML 파일의 메모리 효율적인 처리
  • 동기 지원: 작은 인메모리 XML 문자열의 고성능 파싱
  • 사용자 정의 매핑: XML 데이터를 단순한 JSON 객체가 아닌 모든 구조로 매핑
  • 네임스페이스 지원: 기본 XML 네임스페이스 처리
  • 엔티티 지원: 사용자 정의 엔티티 지원과 함께 내장 엔티티 디코딩