REST API with nodejs and epxress framework.
cd app
npm init
To run the app in Terminal from the app root folder
node app.js
To make a request use and REST client via CURL
curl --header "Content-Type: application/json" --request POST --data '{"filter": []}' http://localhost:3000
curl --header "Content-Type: application/json" --request POST --data '{"filters":[{"field":"average age","operators":{"lt":40,"gt":25}},{"field":"distance from city center","operators":{"lt":10}},{"field":"average income","operators":{"sort":"desc"}}]}' http://localhost:3000
Each filter generates new dataset
Warning eq (equals) function cannot be used with lt or gt.
{
"filters": []
}
{
"filters": [
{
"field":"average age",
"operators":{
"lt": 40,
"gt": 25
}
},
{
"field": "distance from city center",
"operators":{
"lt": 10
}
},
{
"field": "average income",
"operators":{
"sort": "desc"
}
}
]
}
{
"filters": [
{
"field":"average income",
"operators":{
"gt": 99000
}
},
{
"field":"average age",
"operators":{
"gt": 30,
"sort": "ascd"
}
}
]
}
Notice: Default sort is asc unless desc is written
- unittest for each filter
- no filter - return all
- Create a unified function for checking if number / string etc...