基于 node 搭建博客系统(一)

系统分为两端,分别实现。

管理员端:

  功能 :个人信息,设置,发布随笔,随笔列表,删除随笔,查找,文章 等。

  技术点:Boostrap + AdminLTE;

      基于nodejs 实现的express 框架;

      MongoDB数据库;

      Mongoose 模块,操作数据库。

用户端:

  功能:浏览随笔列表,查看随笔,文章类似,评论,点赞 等;

  技术点:HTML + CSS + javascript 完成用户端页面及交互逻辑(使用博客模板);

      jquery 实现DOM操作,Ajax 数据对接。

 

博客系统目标拆分实现

  1:实现“用户访问接口,给用户返回一个HTML页面”:

  (1)新建blog项目,

  (2)在项目路径下,cmd 执行 npm init  进行项目初始化。

  (3)执行 npm install express --save  z安装express 框架。

  (4)在项目文件下新建app.js 文件,并在其中引入express模块。

  (5)在 app.js 中使用express 提供的方法,开启服务,监听前端请求,并作出响应。

  2:实现“用户访问接口,返回一个带样式的HTML页面”:

  (1)在 app.js 中配置静态资源托管路径

    app.use('/pub',express.static(__dirname+'/public'));

  (2)在html 页面中通过配置的路径访问对应资源

    <link rel="stylesheet" href="/pub/css/index.css">

  3:在前端渲染出来的html中,加入文章列表的数据

  (1)后端添加一个 /list 接口,用来给用户返回html 结构。

app.get('/list',function (req,res) {  //只负责渲染文章列表的页面结构
    res.sendFile(__dirname+'/views/list.html');
})

 

  (2)后端再添加一个  /list/getdata ,用以返回文章数据

var listD = require('./data/listData');
app.get('/list/getdata',function (req,res) {
    res.send(listD);
})

  (3)前端通过ajax请求 /list/getdata接口,并拿到json数据包,通过dom操作嵌入html中。(略)

  

  下节将使用模板引擎来拆分代码和渲染数据。

 

posted @ 2018-11-14 19:10  wenlvpapa  阅读(1294)  评论(0编辑  收藏  举报