feat: Bump version to 1.1.0, add CHANGELOG.md, and implement concurrency support with enhanced session management.

This commit is contained in:
gotolombok
2026-01-31 17:35:36 +08:00
parent 6d732c99b1
commit 254f276bf7
2 changed files with 21 additions and 1 deletions

20
CHANGELOG.md Normal file
View File

@@ -0,0 +1,20 @@
# Changelog
All notable changes to this project will be documented in this file.
## [1.1.0] - 2026-01-31
### Added
- **Concurrency Support**: Implemented a per-request architecture where `MovieBoxAPI` and `SessionManager` are instantiated for each request. This isolates user sessions and prevents race conditions under high load.
- **Enhanced /download Endpoint**: The `/download` endpoint now mirrors the logic of `/sources`, including session warm-up and reliable resource retrieval for both Movies and Series.
- **Session Warm-up**: Implemented automatic scraping of the content detail page to capture necessary session cookies and `uid` before making API calls.
- **UID Propagation**: The `uid` is now correctly extracted and sent with all `/play` and `/download` requests, ensuring authorization.
### Fixed
- **Empty Results**: Fixed an issue where `/sources` and `/download` returned empty arrays due to missing session data and incorrect headers.
- **Series Playback**: Resolved specific issues with Series content by standardizing the `Referer` path to `/movies/` (which is used by the upstream source for all content types).
- **API Stability**: Fixed "unresponsiveness" and cross-user session pollution by removing Singleton antipatterns.
### Changed
- **Documentation**: Updated `API.md` and `README.md` to reflect the new architecture and endpoint requirements (removed `detailPath` from `/download` params).
- **Architecture**: Refactored `api.js` and `session.js` to export Classes instead of singletons.