hi-nginx-1.7.8发布了。 这一次更新的重点嵌入javascript引擎duktape,因而支持使用js进行web应用开发。通过以下四个命令开启duktape支持:
duktape web开发的接口与python和lua保持一致。例子: /*
var foo = require('foo')
hi_res.header('Content-Type','text/plain;charset=UTF-8')
hi_res.content(foo.hello())
hi_res.status(200)
*/
/*
var mustache = require('mustache')
var template = '<h1>Test mustache engine</h1><p>{{body}}</p>';
var model = {body:'Hello World'};
hi_res.content(mustache.to_html(template,model))
hi_res.status(200)
*/
/*
var handlebars = require('handlebars')
var template = handlebars.compile('<h1>Test handlebars engine</h1><p>{{body}}</p>')
var model = {body:'Hello World'};
hi_res.content(template(model))
hi_res.status(200)
*/
/*
var echo = require('echo')
var t=new echo()
t.set('HELLO, ')
hi_res.content(t.concat('Tom'))
hi_res.status(200)
*/
/*
var route = require('route').get_instance()
route.get('^\/get/?(\\w+)$', function (req, res, param) {
res.header('Content-Type', 'text/plain;charset=UTF8')
res.content(req.method()+'\n'+req.uri() + '\n' + param.toString())
res.status(200)
})
route.post('^\/post/?([a-zA-Z]+)?$', function (req, res, param) {
res.header('Content-Type', 'text/plain;charset=UTF8')
res.content(req.method()+'\n'+req.uri() + '\n' + param.toString())
res.status(200)
})
route.put('^\/put/?([0-9]+)?', function (req, res, param) {
res.header('Content-Type', 'text/plain;charset=UTF8')
res.content(req.method()+'\n'+req.uri() + '\n' + param.toString())
res.status(200)
})
route.add(['GET', 'POST', 'PUT'], '^\/(.*)$', function (req, res, param) {
res.header('Content-Type', 'text/plain;charset=UTF8')
res.content(req.method()+'\n'+req.uri() + '\n' + param.toString())
res.status(200)
})
route.run(hi_req, hi_res)
*/
/*
var loaded = hi_module.require('demo', 'cpp')
var registered = cpp()
if (loaded && registered) {
var a = new demo()
hi_res.header('Content-Type', 'text/plain;charset=UTF-8')
hi_res.content(a.echo('hello,cpp class'))
hi_res.status(200)
hi_module.free(a)
}
*/
///*
hi_res.header('Content-Type','text/plain;charset=UTF-8')
hi_res.content('hello,world')
hi_res.status(200)
//*/ |