개요
주요 기능
- TypeScript 지원 - 완전한 TypeScript 타입과 인터페이스 제공
- 범용 - 브라우저와 Node.js 환경 모두에서 동작
- 모듈형 아키텍처 - 필요한 모듈만 설치 가능
- 이벤트 기반 - 실시간 데이터를 위한 반응형 프로그래밍 패턴
- 고급 기능 - 내장 캐싱, 깊은 비교, 각종 최적화 기능
- 최신 - async/await를 지원하는 ES6+ 문법
요구 사항
- Node.js 14 이상
설치
시작하기
세션 설정
@benzinga/session 모듈은 Benzinga API 인증을 위한 기반을 제공합니다. 다른 모든 모듈은 이 Session 객체에 의존합니다.
구성 옵션
Session 객체는 동작을 사용자 정의하기 위한 다양한 구성 옵션을 허용합니다:
핵심 개념
모듈형 설계
- 필요한 모듈만 설치
- 번들 크기 축소
- 관심사를 명확히 분리
- 모듈을 독립적으로 업데이트
이벤트 기반 아키텍처
캐싱 및 성능
- 불필요한 API 호출 감소
- 응답 시간 개선
- 대역폭 사용 최적화
- 오프라인 대체 기능 제공
심층 비교
- 중첩 객체 변경 사항 감지
- 효율적인 상태 관리
- 스마트한 업데이트 트리거
- UI 애플리케이션에서 불필요한 리렌더링 감소
사용 가능한 모듈
코어 모듈
@benzinga/session- 인증 및 세션 관리 (필수)@benzinga/calendar-data- 캘린더 이벤트 및 기업 행동@benzinga/news-data- 뉴스 기사 및 시장 정보@benzinga/quotes- 실시간 및 지연 시세@benzinga/fundamentals- 기업 기초 재무 지표 및 재무 데이터
전용 모듈
@benzinga/ratings- 애널리스트 등급 및 목표가@benzinga/options- 옵션 거래 동향 및 분석@benzinga/transcripts- 실적 발표 콜 녹취록@benzinga/logos- 기업 로고 및 브랜딩@benzinga/signals- 거래 시그널 및 지표
TypeScript 지원
사용 예제
기본 데이터 조회
실시간 데이터 스트림
calendar 이벤트
기업의 기초 재무 지표
브라우저에서 사용
오류 처리
페이지네이션
캐싱 전략
모범 사례
1. 세션 객체 재사용
2. 환경 변수
3. 타입 안전성
4. 에러 바운더리
리소스
- 저장소(Repository): github.com/Benzinga/benzinga-javascript-client
- npm 패키지: @benzinga/session
- API 키: cloud.benzinga.com
- TypeScript: 버전 4.0 이상
- Node.js: 버전 14 이상
모듈 문서
@benzinga/session- 핵심 인증 및 구성@benzinga/calendar-data- calendar 이벤트 API@benzinga/news-data- 뉴스 및 기사 API@benzinga/quotes- 실시간 시세 API@benzinga/fundamentals- 기초 재무 지표 및 재무 정보 API