前言 想必不少小伙伴开始学 node 的时候想搞个项目出来殊不知道怎么下手吧,这个教程的话就是教你们用 express 框架简单粗暴搭建一个能够用的后台出来,而后关于 node 和 express 的其余知识,你们仍是须要本身去看看文档了解一下。javascript
express 既然是基于 node 的开发框架,首先 node 那些确定都配好了吧,这个就本身搞去。而后下面就是要搞 express 的东西了。css
一、全局安装 express,方便后面直接导入 express 模块。html
npm install express -g
二、再全局安装 express 的脚手架工具,装完咱们就能够很舒服的生成一个 express 项目了前端
npm install express-generator -g
环境配好后,搭建项目就很舒服啦,直接就是一条指令java
express express-demo
接下来就是,安装依赖,运行项目node
npm install npm run start
而后咱们打开浏览器查看 3000 端口,看到下面的页面就说明咱们 express 后台已经跑起来了git
生成的项目结构以下图所示github
│ app.js │ package.json │ ├─.idea │ │ express-demo.iml │ │ modules.xml │ │ vcs.xml │ │ workspace.xml │ │ │ └─inspectionProfiles ├─bin │ www │ ├─public │ │ index.html │ │ │ ├─images │ ├─javascripts │ └─stylesheets │ style.css │ ├─routes │ index.js │ users.js │ └─views error.jade index.jade layout.jade
咱们一个一个来讲明哈。数据库
一、bin
文件夹express
里面的话有 www
文件,那个就是项目的启动脚本文件,监听端口在里面设置,通常状况无论这个文件。
二、public
文件夹
静态资源文件夹,放着 css,js,img 那些,而后若是在里面写个 index.html
的话,咱们访问 3000 端口的时候就会直接访问 index.html
的那个页面。因此这边的话,能够把咱们前端开发打包好的代码。
三、routes
文件夹
这个是重点啦,路由文件夹,里面的文件用于生成路由实例,这个路由实例用来响应前端发过的请求,按照如今先后端分离的思想,咱们在这里面写后台的那些接口了。咱们抓一个文件来看一下
// index.js // 引入依赖 var express = require('express'); var router = express.Router(); // 处理前端请求 /* GET home page. */ /* 这边的 router.get 是接收前端的 get 请求 第一个参数是路由地址,这边的 '/' 就指根路由,也就是http://localhost:3000 啦 第二个参数是一个响应接口的回调函数,里面有三个参数,分别是 请求头request 响应体response,和一个next */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); // 导出路由模块 module.exports = router;
上面这个是系统默认的给的,他的话是根据模板(下面会讲)生成了一个页面渲染回去,可是咱们如今先后端都分离啦,通常都是后台写接口丢给前端就好啦,因此咱们要改为下面这个样子
router.get('/', function(req, res, next) { // 处理好要返回给前端的数据 let data = { name:'xhm', age:12 } // 用 res.json 方法写接口 res.json({ code:0, msg:'ok', data:data }) });
安装上面这样搞,咱们从新访问 3000 端口的时候就会发现这个时候返回就是一个 json 的数据啦(以下图),这样就写了一个简单的后台接口,后面的不一样业务逻辑的接口,就看你前面怎么去处理那些数据啦。
四、views
文件夹
这个用于存放 jade 模板,这个的话,不懂也比较少会用到,只知道这个能够做为页面的模板来使用,渲染一下报错页面和主页,其余就没有用了。
五、app.js
文件
这个是项目的入口文件,这边有着项目的一下配置,也在此整合了项目的模块,其中要注意的就是里面关于路由模块的配置了。看下面代码
// 引入 routes 文件夹中的路由文件 var indexRouter = require('./routes/index'); var usersRouter = require('./routes/users'); ... // 设置这些路由的地址 app.use('/', indexRouter); app.use('/users', usersRouter);
这边作一点说明吧:
./routes/users
文件里面定义了 '/login'
这么一个路由地址,那么因为整个 users
的地址是 '/users'
,因此咱们在外面要访问那个 login
的话,该访问的地址是 http://localhost:3000/users/login
。app.use
设置好地址,后面就能够用了。六、package.json
文件
这个就是整个项目的配置文件啦。项目的名字啦,版本号和项目所需的那些依赖全都写在这里面的啦,可是通常咱们是不用管的。
既然搭建了后台,数据库确定是要链接的,不一样的数据库的话,就安装不一样的插件来使用,若是你使用的是 mongoDB 的话,就推荐使用 mongoose 来操做数据库,关于 mongoose 的使用能够看我另一篇教程
源代码的话我放到个人 Github 上面去了,能够去 clone 下来看一下。关于 express 项目的简单开发就讲到这边啦,可是若是是这么简单的设置这个项目的目录结构的话,可扩展性不高,代码复用也很差,因此咱们要看下一篇文章啦--express 项目分层实践