UNPKG

aviation-api

Version:

[![Build Status](https://travis-ci.org/cristobal-io/aviation-api.svg?branch=master)](https://travis-ci.org/cristobal-io/aviation-api)

67 lines (52 loc) 1.43 kB
"use strict"; var express = require("express"); var app = express(); var aviationModel = require("aviation-model"); app.use(function (req, res, done) { res.setHeader("Content-Type", "application/json"); done(); }); // Request header logger middleware app.get("*", function (req, res, next) { console.log(req.headers);//eslint-disable-line no-console next(); }); // http://localhost:8081/airports/?city=Valencia&iata=VLC app.get("/airports/", function (req, res, next) { if (!req.query.city) { return next(); } res.end(JSON.stringify({ CITY_HERE: req.query.city })); }); // http://localhost:8081/airports/?name=Valencia&iata=VLC app.get("/airports/", function (req, res) { res.end(JSON.stringify(req.query)); }); // http://localhost:8081/airport/valencia app.get("/airport/:name", function (req, res) { res.end(JSON.stringify({ name: req.params.name })); }); // http://localhost:8081/airport/iata/VLC app.get("/airport/iata/:iata", function (req, res) { aviationModel.getAirportJson({ iata: req.params.iata }, function (err, airport) { if (err) { throw err; } console.log("Airport: ", airport);//eslint-disable-line no-console res.end(JSON.stringify({ Airport: airport })); }); }); app.listen(8081, function (err) { if (err) { throw err; } console.log("Listening on http://localhost:8081");//eslint-disable-line no-console });