odata-v4-pg
v0.1.1
Published
OData to PostgreSQL query compiler
Downloads
744
Readme
OData V4 Service modules - PostgreSQL Connector
Service OData v4 requests from a PostgreSQL data store.
Synopsis
The OData V4 PostgreSQL Connector provides functionality to convert the various types of OData segments into SQL query statements, that you can execute over a PostgreSQL database.
Potential usage scenarios
- Create high speed, standard compliant data sharing APIs
Usage as server - TypeScript
import { createFilter } from 'odata-v4-pg'
//example request: GET /api/Users?$filter=Id eq 42
app.get("/api/Users", (req: Request, res: Response) => {
const filter = createFilter(req.query.$filter);
// connection instance from pg module
connection.query(`SELECT * FROM Users WHERE ${filter.where}`, filter.parameters, function(err, result){
res.json({
'@odata.context': req.protocol + '://' + req.get('host') + '/api/$metadata#Users',
value: result.rows
});
});
});
Advanced TypeScript example available here.
Usage ES5
var createFilter = require('odata-v4-mysql').createFilter;
app.get("/api/Users", function(req, res) {
var filter = createFilter(req.query.$filter);
// connection instance from pg module
connection.query(filter.from("Users"), filter.parameters, function(err, result){
res.json({
'@odata.context': req.protocol + '://' + req.get('host') + '/api/$metadata#Users',
value: result.rows
});
});
})
Supported OData segments
- $filter
- $select
- $skip
- $top
- $orderby
- $expand