您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“nodejs個人博客開發之入口文件的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“nodejs個人博客開發之入口文件的示例分析”這篇文章吧。
錯誤處理中間件
定義錯誤處理中間件必須使用4個參數,否則會被作為普通中間件
/*錯誤處理器*/ application.use(function(err,req,res,next){ console.error(err.stack); res.status(500).send("代碼出錯了,錯誤信息:<br/>"+err.stack); }); /*404*/ application.use(function(req,res,next){ res.status(404).send("404頁面被火星人挖走了"); });
創建文件結構
公共文件夾(common),控制器文件夾(controller),模型文件夾(model),視圖文件夾(view),靜態資源文件夾(static)
定義配置文件和函數文件并載入
配置文件common/config.js
/** * 公共配置文件 */ module.exports={ DB_HOST:'localhost', DB_NAME:'blog', DB_USER:'root', DB_PASS:'root', DB_PRE:'', APP_PORT:'8888' };
函數文件common/functions.js
/** * 公共函數文件 */ module.exports={ /*模擬php的date()函數*/ phpDate:function(formatStr,time){ var paramModel='ymdhis'; if(!formatStr) formatStr="y-m-d h:i:s"; if(time){ myDateTime=new Date(time*1000); }else{ myDateTime=new Date(); } var strTimeArr=[ myDateTime.getFullYear().toString(), (myDateTime.getMonth()+1).toString(), myDateTime.getDate().toString(), myDateTime.getHours().toString(), myDateTime.getMinutes().toString(), myDateTime.getSeconds().toString(), ]; for(var i=0;i<strTimeArr.length; i++){ formatStr=formatStr.replace(paramModel.charAt(i), strTimeArr[i]); } return formatStr; } };
載入公共文件,定義資源文件
/*載入公共文件,定義資源文件*/ global.C=require("./common/config"); global.F=require("./common/functions"); application.use(express.static('public'));
路由級中間件
控制器分為兩組home和admin
/*路由級中間件*/ application.use('/',require('./controller/home/index')); application.use('/admin',require('./controller/admin/index'));
以上是“nodejs個人博客開發之入口文件的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。