内容简介: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]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
松本行弘的程序世界
松本行弘 / 柳德燕、李黎明、夏倩、张文旭 / 人民邮电出版社 / 2011-8 / 75.00元
《松本行弘的程序世界》是探索程序设计思想和方法的经典之作。作者从全局的角度,利用大量的程序示例及图表,深刻阐述了Ruby编程语言的设计理念,并以独特的视角考察了与编程相关的各种技术。阅读《松本行弘的程序世界》不仅可以深入了解编程领域各个要素之间的关系,而且能够学到大师的思考方法。 《松本行弘的程序世界》面向各层次程序设计人员和编程爱好者,也可以供相关技术人员参考。一起来看看 《松本行弘的程序世界》 这本书的介绍吧!