欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

使用Nodejs進行web開發(fā) - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設/小程序開發(fā)/軟件開發(fā)

知識

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!

您當前位置>首頁 » 新聞資訊 » 網(wǎng)站建設 >

使用Nodejs進行web開發(fā)

發(fā)表時間:2017-8-5

發(fā)布人:葵宇科技

瀏覽次數(shù):37

Node.js 和 PHP、 Perl、ASP、JSP 一 ,目的都是實現(xiàn)動動態(tài)網(wǎng)頁,也就是說由服務器動動態(tài)生成 HTML 頁面。
之所以要這么做,是因為靜態(tài) HTML 的可擴展性非常有限,無法與用戶有效交互。

軟件工程分解為 個層面:模型 、視圖和控制器。
1)模型是對象及其數(shù)據(jù)結(jié)構(gòu)的實現(xiàn),通常包含數(shù)據(jù)庫操作。
2)視圖表示用戶界面,在網(wǎng)站中通常就是 HTML 的組織結(jié)構(gòu)。
3)控制器用于處理用戶請求和數(shù)據(jù)流、復雜模型 ,將輸出傳遞給視圖。

準備工作

1、使用 http 模塊

post請求:

var http = require('http');
var querystring = require('querystring');
var server = http.createServer(function(req, res) {
var post = '';
req.on('data', function(chunk) { post += chunk;
});
req.on('end', function() {
post = querystring.parse(post);
        res.write(post.title);
        res.write(post.text);
        res.end();
}); }).listen(3000);

這里寫圖片描述

所以相比php,要用nodejs用http模塊直接開發(fā)網(wǎng)站,必須手動實現(xiàn)所有東西了

2、Express框架

nodejs推薦的唯一一個web開發(fā)框架
除了為http模塊提供了更高層的接口外,還實現(xiàn)了許多功能,包括:
- 路由控制
- 模模解析支持
- 動態(tài)視圖
- 用戶會話
- CSRF保護
- 靜態(tài)文件服務
- 錯誤控制器
- 訪問日志
- 緩存
- 插件支持

快速開始

1、安裝Express

$ npm install -g express

2、建立工程

$ express -t ejs microblog
$ cd microblog && npm install

3、啟動服務器

$ node app.js

在瀏覽器中打開:http://localhost:3000

三、路由控制

1、工作原理

  • 訪問http://localhost:3000 瀏覽器會向服務器發(fā)送請求
  • app解析請求的路徑,調(diào)用相應的邏輯
  • app.js 中有一行內(nèi)容是 app.get(‘/’, routes.index),它的作用是規(guī)定路徑為 / 的 GET 請求由 routes.index 函數(shù)處理
  • routes.index 通 過 res.render(‘index’, { title: ‘Express’ }) 調(diào)用視圖模板 index,傳遞 title 變量
  • 最終視圖模板生成 HTML 頁面, 返回給瀏覽器
  • 瀏覽器在接收到內(nèi)容以后,經(jīng)過分析發(fā)現(xiàn)要獲取 /stylesheets/style.css,因此會再次 服 務器發(fā) 請求。
  • app.js 中并沒有一個路由規(guī)則指 到 /stylesheets/style.css,但 app 通過 app.use(express.static(__dirname + ‘/public’)) 配置了靜態(tài)文件服務器,因此 /stylesheets/style.css 會定向到 app.js 所在目錄的 子目錄中的文件 public/stylesheets/style.css, 向客戶端返回樣式內(nèi)容

這里寫圖片描述

2、創(chuàng)建路由規(guī)則

  • 打開 app.js,在已有的路由規(guī)則 app.get(‘/’, routes.index) 后面添加一行
  • app.get(‘/hello’, routes.hello);
  • 改 routes/index.js, 加 hello 函數(shù):
 exports.index = function(req, res) {
      res.render('index', { title: 'Express' });
};
exports.hello = function(req, res) {
  res.send('The time is ' + new Date().toString());
};

2)REST 風格的路由規(guī)則

四、模版引擎

1、什么是模板引擎

  • 模板引擎(Template Engine)是一個從頁面模板根據(jù)一定的規(guī)則生成 HTML 的工具
  • 模板引擎的功能是將頁面模板和要顯示的數(shù)據(jù)結(jié)合起來生成 HTML 頁面。
  • 它 可以運行在服務器端 可以運行在 客戶端
  • 主流的還是由服務器運行模板引擎
在MVC架構(gòu)中,模板引擎包含在服務器端,控制器得到用戶請求后,從模型獲取數(shù)據(jù)調(diào)用模板引擎.
模板引擎以數(shù)據(jù)和 頁面模板為輸入,生成html頁面,然后返回給控制器
由控制器交回給客戶端

模板引擎在mvc中的位置:
這里寫圖片描述

2、使用模板引擎 ejs

ejs標簽系統(tǒng)非常簡單,3中標簽:

- <% code %>: js 代碼
- <%= code %>: 顯示替換過的html特殊字符的內(nèi)容
- <%- code %>: 顯示原始html內(nèi)容

相關案例查看更多