之前我已经使用了纯node去编写了一个博客,由于在平时的业务当中,我们不会使用一个纯手写一个web服务器,而是使用express或者koa等阵node.js的web服务器框架进行编写,因此出于个人喜好,本人选取了koa2.0进行编写。
1.static-server:主要是处理img,css,js等静态资源。
2.api-server:处理前端发送过来ajax请求,当前端将请求发送过来,通过报文的主要信息使用mongoose这个Promise风格的库操作mongoDB数据库,然后返回数据
3.cookie-parser:由于HTTP协议是无状态协议,当我们需要和客户端进行session的时候,我们需要cookie帮助我们保存状态,因此这个中间件,通过设置白名单机制来控制登录处理,用HttpOnly来方式XSS脚本注入攻击,用max-age来规定cookie保存时间
4.url-parser:这个中间件是用来处理前端通过post请求,通过流的方式,取得post请求的数据,然后将数据送到api-server中间件进行数据库处理
5.view-server:这个中间件主要负责服务端渲染,使用ejs模板语言根据URI来做出不同渲染,而且还处理了重定向的问题
步骤:
1.先安装mongoDB数据库
2.git clone git@github.com:PeterCheng1/pure-node-note-book.git
3.npm install
4.sh ./db.sh (启动mongoDB服务)
5. 进到public目录 ==> npm start (编译前端代码)
6. 在node启动目录,npm start 启动服务器 localhost:7000