真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例-創(chuàng)新互聯(lián)

這篇文章主要介紹怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

專注于為中小企業(yè)提供做網(wǎng)站、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)左貢免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

前言

最近突然對(duì)數(shù)據(jù)庫(kù)和后臺(tái)感興趣了,就開(kāi)始了漫長(zhǎng)的學(xué)習(xí)之路,想想自己只是一個(gè)前端,只會(huì)java斯科瑞普,所以就開(kāi)始看nodejs,看著看著突然發(fā)現(xiàn)mongodb和nodejs更配哦!,遂就開(kāi)了我的mongodb之路。下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。

mongodb簡(jiǎn)介

就超簡(jiǎn)潔的說(shuō)一下,mongo就是一個(gè)nosql的數(shù)據(jù)庫(kù),不使用sql的語(yǔ)法,當(dāng)然其實(shí)也是大同小異的,增刪改查還是差不多的,但是在概念上mongo還是跟mysql有相當(dāng)大的區(qū)別的;比如在mongo中沒(méi)有表的概念,而是一個(gè)集合;由于這些概念性的東西有很多,我在這里給各位附上鏈接,你們自己看一下biu!我是鏈接!;

說(shuō)說(shuō)我的小demo使用到的一些東西

直接懟package的依賴圖片吧

怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例

說(shuō)下各個(gè)部分的作用:

  • express:這就是nodejs的一個(gè)web應(yīng)用的開(kāi)發(fā)框架;

  • body_parser:這個(gè)寫(xiě)nodejs的應(yīng)該都知道,用于解析客戶端請(qǐng)求的body中的內(nèi)容的一個(gè)中間件,因?yàn)橐玫奖韱翁峤?所以需要解析獲得的數(shù)據(jù);

  • mongoose:從這個(gè)名字就可以知道這個(gè)是和mongodb有關(guān)系的依賴;這個(gè)依賴是nodejs封裝用來(lái)連接和操作mongodb數(shù)據(jù)庫(kù)的;
     其余幾個(gè)我相信各位應(yīng)該都知道,其實(shí)這個(gè)我相信我不介紹各位應(yīng)該也都知道的,原諒我的話癆!!!

列表結(jié)構(gòu)列表

還是直接懟圖片吧!實(shí)在是不想生成tree了!

怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例

其實(shí)這是一個(gè)很簡(jiǎn)單的demo!主要還是體驗(yàn)出nodejs對(duì)前端靜態(tài)資源的渲染,以及nodejs的路由,還有其對(duì)mongodb的支持!
user.js里面確定了mongoose的一個(gè)Schema,也就是寫(xiě)入數(shù)據(jù)庫(kù)的格式

var UserSchema = new Schema({
 username : String,
 userpsw : String,
 logindate : Date
})

這樣就構(gòu)建了一個(gè)數(shù)據(jù)模型;

從項(xiàng)目目錄上可以看出,我只是寫(xiě)了簡(jiǎn)單三個(gè)頁(yè)面,其實(shí)最最最主要的只是一個(gè)文件,app.js;

app.js內(nèi)容

在這個(gè)里面我主要寫(xiě)了關(guān)于接受前臺(tái)傳入的數(shù)據(jù)是怎么存入mongodb的,還有是怎么判斷是否已經(jīng)注冊(cè);是否輸入了正確的賬號(hào)密碼的;

在這我放一段檢測(cè)注冊(cè)的代碼,在注冊(cè)成功后就將用戶的信息寫(xiě)入到數(shù)據(jù)庫(kù)

app.post('/register',(req, res) => {
 console.log('user in session')
 console.log(req.session);
 //先查詢有沒(méi)有這個(gè)user
 console.log("req.body"+req.body);
 var UserName = req.body.username;
 var UserPsw = req.body.password;
 //通過(guò)賬號(hào)驗(yàn)證
 var updatestr = {username: UserName};
 res.setHeader('Content-type','application/json;charset=utf-8')
  console.log(updatestr);
  userSchema.find(updatestr, function(err, obj){
   if (err) {
    console.log("Error:" + err);
   }
   else {
    if(obj.length == 0){
     insert(UserName,UserPsw); 
     res.send({status:'success',message:'true'}) 
    }else{
     res.send({status:'success',message:'false'}) 
    }
   }
  }) 
});

這樣的話就可以將用戶傳入的信息存入到數(shù)據(jù)庫(kù)了;登錄同理,先將傳過(guò)來(lái)的數(shù)據(jù)在數(shù)據(jù)庫(kù)里查詢是否已經(jīng)有,然后再將用戶名和密碼都一一對(duì)比,如果匹配的話就返回登錄成功;

說(shuō)說(shuō)前端部分

原諒我的表達(dá)能力是真的有限,上面的后端各位肯定沒(méi)怎么看懂,歡迎去觀看我的源碼;下面來(lái)說(shuō)下我對(duì)前端部分的一些處理;
前端部分主要就是在login頁(yè),我做了一個(gè)cookie的處理,當(dāng)用戶點(diǎn)擊保存賬戶的時(shí)候,我就將用戶的信息存入cookie下次登錄的時(shí)候就不用麻煩去輸入用戶名和密碼了;

  if($('#mycheck').prop('checked')==true){
      setCookie('username',username,7);
     }

其實(shí)也就是當(dāng)?shù)卿涷?yàn)證成功并且用戶check了checkbox的時(shí)候?qū)ookie存入;下次登錄的時(shí)候直接將cookie值解析,然后放入到用戶名的input框的value值中!

由于我的表達(dá)能力有限,文章可能寫(xiě)的不是那么詳細(xì),有看不懂的可以去看源碼

以上是“怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


分享文章:怎么利用node.js+mongodb搭建一個(gè)簡(jiǎn)單登錄注冊(cè)的案例-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)URL:http://weahome.cn/article/dijijg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部