android-sex-size
Version:
a nodejs cli tool for android screen adaptation
58 lines (47 loc) • 1.54 kB
text/coffeescript
_ = require 'lodash'
path = require 'path'
colors = require 'colors/safe'
express = require 'express'
bodyParser = require 'body-parser'
favicon = require 'serve-favicon'
template = require './config-template'
extracter = require './extracter'
measurer = require './measurer'
dragoner = require './dragoner'
app = express()
SERVER_PORT = 8888
SERVER_ADDR = "http://localhost:#{SERVER_PORT}"
app.use favicon(path.join(__dirname, '..' ,'art', 'favicon.ico'))
app.use bodyParser.urlencoded( extended: true )
app.use bodyParser.json()
app.use '/', express.static(path.join(__dirname, '..', 'art'))
app.get '/config', (req, res) ->
res.send template()
app.post '/measure', (req, res, next) ->
measurer req.body
.then ->
res.sendStatus 204
.catch next
app.post '/dragon', (req, res, next) ->
dragoner req.body
.then ->
res.sendStatus 204
.catch next
app.post '/extract', (req, res, next) ->
extracter req.body
.then ->
res.sendStatus 204
.catch next
app.use (req, res, next) ->
err = new Error 'Not Found'
next err
app.use (err, req, res, next) ->
console.log "#{colors.red '[error]'}#{err}"
res.send err: err
handler = () ->
app.listen SERVER_PORT, (err) ->
unless err
console.log "#{colors.green '[success]'} use your browser to access the #{colors.yellow SERVER_ADDR}"
else
throw err
module.exports = handler