成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

[node.js]《Nodejs開(kāi)發(fā)指南》 微博項(xiàng)目實(shí)現(xiàn)

Lowky / 1208人閱讀

摘要:開(kāi)發(fā)指南原有的下載地址失效了,想要的朋友可以戳我項(xiàng)目完整代碼一個(gè)基于和的簡(jiǎn)單微博項(xiàng)目,具體描述詳見(jiàn)開(kāi)發(fā)指南。改為其中書(shū)中使用來(lái)實(shí)現(xiàn)服務(wù)器返回信息的顯示,但是該方法在很久之前被廢除。

Nodejs開(kāi)發(fā)指南PDF(原有的下載地址失效了,想要pdf的朋友可以戳我):
http://wenku.baidu.com/link?url=RSy6donQq0guPBwwFZiWjPGJzzINmuierqZJr9ZMxfivll2gw2AtK9SNu_BGAsEBq5-WMyaZwzpQeDoyWM_t67eLOCsHOnhO5LF4onWva8y

項(xiàng)目完整代碼:
https://github.com/chnmagnus/MBlog

一個(gè)基于express和mongodb 的簡(jiǎn)單微博項(xiàng)目,具體描述詳見(jiàn)《Nodejs開(kāi)發(fā)指南》。
網(wǎng)上也有一些該項(xiàng)目實(shí)現(xiàn)的代碼,但是基本都是幾年前的= =,許多代碼都無(wú)法運(yùn)行,各種search之后終于用各種最新版本的代碼實(shí)現(xiàn)了這一項(xiàng)目,特此記錄,分享。


簡(jiǎn)單說(shuō)一下我的代碼相對(duì)書(shū)中代碼的變化:

1.ejs模板,layout.js被廢棄,所以我使用include來(lái)提升代碼的復(fù)用性。
將html代碼的head及nav部分放在header.ejs中,將頁(yè)腳部分放在footer.ejs中,然后在需要的部分使用<%- include header.ejs %>的方式來(lái)進(jìn)行引入。


2.app.METHOD(URL,function) 改為 app.use(URL,routes);
其中var routes = require("./routes/index");


3.書(shū)中使用req.flash()來(lái)實(shí)現(xiàn)服務(wù)器返回信息的顯示,但是該方法在很久之前被廢除。
解決方法一:
如果想繼續(xù)使用req.flash(),需要require("connect-flash")模塊(https://github.com/jaredhanso...),但這個(gè)模塊也已三年沒(méi)有更新過(guò)了= =,我并不確定是否能用。
解決方法二:
我是使用了res.locals.xxx;以及添加中間件的方式來(lái)進(jìn)行信息的反饋。在需要返回信息給客戶(hù)端的位置,例如登錄成功時(shí),使用如下代碼:

res.lacals.result = "登錄成功";
res.redirect("/");

配合app.js中的部分代碼:

var session = require("express-session");
var MongoStore = require("connect-mongo")(session);
//...
app.use(session({
  name: settings.name,
  secret: settings.secret,
  cookie: {
    maxAge: 1000*60*30
  },
  store: new MongoStore({
    url: settings.url
  })
}));
//...
//這部分代碼是放在對(duì)具體路徑進(jìn)行處理之前的
app.use(function (req,res,next) {
  res.locals.user = req.session.user;
  var result = req.session.result;
  delete req.session.result;
  res.locals.message = ""; 
  if(result){
    res.locals.message = result;
  }
  next();//中間件傳遞
});

當(dāng)然,不要忘記修改ejs模板,在開(kāi)頭添加代碼用來(lái)顯示反饋信息:

 <% if (message) { %>
  
<%= message %>
<% } %>

效果如下圖:


4.使用了官方推薦的MongoClient方式來(lái)進(jìn)行數(shù)據(jù)庫(kù)的連接,關(guān)于這種方式的模塊化,我也存有困惑,在segmentfault上提過(guò)問(wèn)題= =,沒(méi)有得到回答,自己摸索著解決的,可以看我的提問(wèn)。

大概就是這樣,共勉,一起努力= =

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/18822.html

相關(guān)文章

  • node.js中文資料導(dǎo)航

    摘要:中文資料導(dǎo)航官網(wǎng)七牛鏡像深入淺出系列進(jìn)階必讀中文文檔被誤解的編寫(xiě)實(shí)戰(zhàn)系列熱門(mén)模塊排行榜,方便找出你想要的模塊多線程,真正的非阻塞淺析的類(lèi)利用編寫(xiě)異步多線程的實(shí)例中與的區(qū)別管道拒絕服務(wù)漏洞高級(jí)編程業(yè)界新聞看如何評(píng)價(jià)他們的首次嘗鮮程序員如何說(shuō)服 node.js中文資料導(dǎo)航 Node.js HomePage Node官網(wǎng)七牛鏡像 Infoq深入淺出Node.js系列(進(jìn)階必讀) Nod...

    geekidentity 評(píng)論0 收藏0
  • GitHub 值得收藏的前端項(xiàng)目[每月更新...]

    摘要:也是一款優(yōu)秀的響應(yīng)式框架站點(diǎn)所使用的一套框架為微信服務(wù)量身設(shè)計(jì)的一套框架一組很小的,響應(yīng)式的組件,你可以在網(wǎng)頁(yè)的項(xiàng)目上到處使用一個(gè)可定制的文件,使瀏覽器呈現(xiàn)的所有元素,更一致和符合現(xiàn)代標(biāo)準(zhǔn)。 GitHub 值得收藏的前端項(xiàng)目 整理與收集的一些比較優(yōu)秀github項(xiàng)目,方便自己閱讀,順便分享出來(lái),大家一起學(xué)習(xí),本篇文章會(huì)持續(xù)更新,版權(quán)歸原作者所有。歡迎github star與fork 預(yù)...

    maxmin 評(píng)論0 收藏0
  • 7月份前端資源分享

    摘要:更多資源請(qǐng)文章轉(zhuǎn)自月份前端資源分享的作用數(shù)組元素隨機(jī)化排序算法實(shí)現(xiàn)學(xué)習(xí)筆記數(shù)組隨機(jī)排序個(gè)變態(tài)題解析上個(gè)變態(tài)題解析下中的數(shù)字前端開(kāi)發(fā)筆記本過(guò)目不忘正則表達(dá)式聊一聊前端存儲(chǔ)那些事兒一鍵分享到各種寫(xiě)給剛?cè)腴T(mén)的前端工程師的前后端交互指南物聯(lián)網(wǎng)世界的 更多資源請(qǐng)Star:https://github.com/maidishike... 文章轉(zhuǎn)自:https://github.com/jsfr...

    pingan8787 評(píng)論0 收藏0
  • 后端知識(shí)點(diǎn)總結(jié)——NODE.JS基礎(chǔ)

    摘要:后端知識(shí)點(diǎn)總結(jié)基礎(chǔ)不是是一種軟件開(kāi)發(fā)平臺(tái),它的競(jìng)爭(zhēng)對(duì)象歷史第一次有一種語(yǔ)言可以通吃前后端網(wǎng)站阿里云鏡像版本年初年中年底最新版本功能強(qiáng)大可靠,適合大型企業(yè)級(jí)項(xiàng)目簡(jiǎn)單易用適合互聯(lián)網(wǎng)項(xiàng)目易用適合平臺(tái)性能好適合服務(wù)器端密集型項(xiàng)目不適合密集型項(xiàng)目密集 后端知識(shí)點(diǎn)總結(jié)——NODE.JS基礎(chǔ) 1.Node.js Node.js不是JS,是一種軟件開(kāi)發(fā)平臺(tái),它的競(jìng)爭(zhēng)對(duì)象JSP/PHP/ASP.NET...

    Freeman 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<