@odata/server v0.2.48
OData(V4) Server
NodeJS OData(V4) Server Implementation.
This project is under heavy development, if you are looking forward an OData Framework for production usage, please try the SAP CAP Framework
Just check the demo project for features preview.
Features
- OASIS Standard
ODataVersion 4.0 server - usable as a standalone server, or as an
Expressrouter - expose service document and service metadata -
$metadata - setup metadata using decorators or @odata/metadata
- supported data types are
Edm primitives,complex types,navigation properties - support
create,read,update, anddeletetheEntitySets, - support
action imports,function imports,bounded actionsandbounded functionsonEntitySets - support for full OData query language using @odata/parser
- filtering entities -
$filter - sorting -
$orderby - paging -
$skipand$top - projection of entities -
$select - expanding entities -
$expand - count records -
$count
- filtering entities -
- support async controller functions using
Promise,async/await - support
ODataV4.01 JSON format$batchoperation - support dependency inject
- support
deep insert
Concepts
Domain Model
Define domain model class, it will be transformed to database schema.
Action & Function
Define Action/Function on the Domain Models.
Using the actions implement the partially focused business logics, and use the functions implement complex queries.
Hook
Hook is general business logic for specify Domain Model, like beforeCreate/beforeUpdate, and it's mapped from OData/HTTP Method.
Define Hooks to implement the general business logics for entity.
Service
Using services in hook/action/function, keep the business consistence for single domain model.
Each model will have its own standard CRUD service which enhanced with hooks logic.
Transaction
Each TransactionContext will use single database transaction (connection).
CHANGELOG
LICENSE
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago