国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

了不起的node.js讀書筆記之mongodb數據庫交互

2019-11-20 13:38:22
字體:
來源:轉載
供稿:網友

 這周的學習主要是nodejs的數據庫交互上,并使用jade模板一起做了一個用戶驗證的網站。主要是遇到了一下幾個問題。

1.mongodb版本過低

  npm ERR! Not compatible with your operating system or architecture: mongodb@0.9.9

  0.9.9只支持linux,darwin,freebsd這幾個系統,最新版本已支持wins。

2.nodejs進行insert操作后:無法讀取結果

復制代碼 代碼如下:

 app.post('/signup', function(req, res, next){
      //插入文檔
      app.users.insert(req.body.user, function(err, doc){
           if(err) return next(err);
           res.redirect('/login/' + doc[0].email);
      });
 });

  表象是重定向失敗,真實情況是插入數據庫已經成功但doc為空,更不要說doc[0].email的值了。原因是insert這類操作是異步進行的,異步操作默認是不返回其結果的來確定是否運行成功的。需要通過增加第三個參數{safe:ture}來實現這個功能,即app.users.insert(req.body.user, {safe:ture}, function(){……})。這樣就成功讀取結果了。

3.connect-connect出現未定義store

復制代碼 代碼如下:

 MongoStore = require('connect-mongo')
 
 app.use(express.session({
     secret:settings.cookieSecret,
     store:new MongoStore({
         db:settings.db
     })
 }));

源碼如上,查明原因為基于Express的不同版本,connect-mongo模塊引入的方式不同。在其Readme.md也特別提示了。

復制代碼 代碼如下:

 With express4:
     var session    = require('express-session');
     var MongoStore = require('connect-mongo')(session);
     app.use(session({
         secret: settings.cookie_secret,
         store: new MongoStore({
           db : settings.db,
         })
       }));
 With express<4:
     var express = require('express');
     var MongoStore = require('connect-mongo')(express);
     app.use(express.session({
         secret: settings.cookie_secret,
         store: new MongoStore({
           db: settings.db
         })
       }));

針對不同的版本,相應的修改即可。

4.總結

  經過這本書的學習,知道nodejs的一些特點以及活躍外文站。node中一些熱門板塊的更新頻率也加大了學習的難度,這本書也算入門吧。接下來計劃通過實戰學習sails后端框架。學習中遇到的問題也都記錄在筆記本上。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 呼伦贝尔市| 西宁市| 陇南市| 拉萨市| 宣汉县| 宾阳县| 乌拉特前旗| 南安市| 西乌| 萍乡市| 三原县| 上饶县| 敦化市| 阳城县| 平顺县| 齐河县| 蕉岭县| 宿迁市| 开江县| 伊吾县| 北辰区| 莱芜市| 随州市| 巴马| 西宁市| 涞源县| 环江| 九龙坡区| 贵港市| 西平县| 长治市| 内丘县| 米泉市| 神木县| 淮南市| 巩义市| 彭州市| 林周县| 广水市| 来凤县| 伊金霍洛旗|