内容简介:Five.js(node-five) 一个轻量级的,易学的,拓展性灵活的 nodejs MVC 框架, 5 分钟即可上手。取自"Give me five"之意, 一切就是这么简单 该分支要求 nodejs 版本在 7.0 或以上,默认使用 mongoDB/MySQL,其他的数...
Five.js(node-five)
一个轻量级的,易学的,拓展性灵活的 nodejs MVC 框架, 5 分钟即可上手。取自"Give me five"之意, 一切就是这么简单
该分支要求 nodejs 版本在 7.0 或以上,默认使用 mongoDB/MySQL,其他的数据库可以自行拓展
启用方法(步骤)
注: 本框架和用法 都是在 Linux 或者 Mac 下面测试通过。至于使用 Windows 并坚持玩新技术的同学,我坚信他们一定有着过人的、 甚至是不可告人的兼容性 bug 处理能力,所以这部分同学麻烦在安装过程无法继续时,自行兼容一下
1. 下载安装 Five.js 框架。
为了方便下载安装及管理, 推荐使用 five-cli(这是一款专门为框架开发的脚本工具) 进行操作。
# 全局安装 five-cli sudo npm i five-cli -g # 进入项目目录 cd /project/demo # 初始化一个项目,初始化完成会自动安装所需要的依赖 five-cli init # 初始化完成之后, 执行以下命令即可启动了,如果需要修改配置,可以先修改好再启动 five-cli start
也可以自行通过 npm 安装, 自己构建启动配置
# 进入项目目录 cd /project/demo npm i node-five --save mkdir apps public data views touch app.js # 自行编辑app.js, 然后通过node, pm2启动项目即可
2. 配置框架
建立启动文件, 如 app.js
'use strict'
const Five = require('five')
var app = new Five()
app.set({ website: 'www.your_domain.com' })
app.set({ domain: 'your_domain.com' }) // 设置域,cookie用到,不设置则同步website
app.set({ VIEWS: './views/' }) // [可选], 但是要用到模板渲染页面时, 必须指定
app.preload('./apps/') // [必须], 预加载应用目录
app.listen(3001) // 默认是3000其他的配置, 请参考 文档(全局配置) 一节
3. 启动应用。在项目根目录打开终端, 输入以下命令 five-cli start, 然后根据提示操作, 即可
# 初始化完成之后, 执行以下命令即可启动了,如果需要修改配置,可以先修改好再启动 five-cli start 不是使用five-cli创建的项目, 可使用node/pm2等启动项目 node app.js # or pm2 start app.js
4. 添加 nginx 配置(使用其他 web 服务,如 apache 的童鞋,请自行根据所使用的 web 服务器语法改写强烈推荐 nginx), 路径啥的自行根据自己的机器修改
upstream five_upstream {
server 127.0.0.1:3000;
#server 127.0.0.1:3005;
keepalive 64;
}
server {
listen 80;
server_name doui.cc;
index index.html index.htm;
root /www/doui.cc/public;
location ~ ^/(images/|js/|css/|cache/|favicon.ico|robots.txt) {
expires 1d;
access_log off;
}
location / {
try_files $uri
@proxy;
}
location @proxy {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
proxy_max_temp_file_size 0;
proxy_pass http://five_upstream;
proxy_redirect off;
proxy_read_timeout 240s;
}
}5. Enjoy you web
=======================================
v3.1.0 更新日志
1. [add] 内置JWT模块
const Five = requie('node-five')
const app = new Five()
app.set({jwt: 'secret'}) // secret为你私钥
// 然后在控制器中, 你便可以这样子用
// 如登录控制器 login中
let token = this.jwt.sign({foo: 'bar', ...})
this.send(200, {token})
// 在其他的控制器中, 可以通过以下方式查看 jwt的结果
let result = this.jwt.result
// 其中,result 会有3种可能的值
// 一种是 字符串 'expired', 意思是该token过期了, 过期时间设定与 session.ttl 一致
// 另外一种是 布尔值 false, 意思是token校验失败, 失败的原因自己找啦
// 最后一种是 对象, 即为当初签名的 token, 如上面的 {foo: 'bar', ...}【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Series 60 应用程序开发
巴克 / 人民邮电出版社 / 2005-7 / 75.0
Series 60智能手机开发平台正掀起新一轮的移动服务浪潮。超过60%的手机生产商获得了Series 60平台的授权。Series 60移动应用开发平台拥有最大的用户群,从而成为智能手机市场的代表。诺基亚与EMCC软件公司合作,为C++程序员和软件设计师编撰了这本Series 60开发的权威指南。本书由诺基亚资深专家进行了全面审阅。本书内容涉及了开发过程的各个阶段,从设计、编程、测试、调试到部署......一起来看看 《Series 60 应用程序开发》 这本书的介绍吧!