node學(xué)習(xí)記錄之搭建web服務(wù)器教程
web服務(wù)器的基本知識
功能:1.接收HTTP請求(get,post,delete,put)2.處理HTTP請求
常見的web服務(wù)器架構(gòu):
1. Nginx/Apache:負(fù)責(zé)接收http請求,確定誰來處理請求,并返回請求的結(jié)果
2. php-fpm/php模塊
常見得到請求
1.請求文件:包括要處理的靜態(tài)文件
2.完成特定的操作,如登錄,獲取特定數(shù)據(jù)等等
使用http創(chuàng)建web服務(wù)器
//引入nodejs的核心模塊http
var http = require('http') ;
//創(chuàng)建一個(gè)http實(shí)例
var reqHandler = function(req,res){
res.end("我全部接受完了") //用來表示已經(jīng)對響應(yīng)內(nèi)容全部接收
}
var web = http.createServer(reqHandler());
web.listen(666)
console.log("http runnibg on http://localhost:666")
運(yùn)行方法在命令行中 輸入node httptest.js即可
使用express創(chuàng)建web服務(wù)器
//引入模塊
var express = require("express") ;
var app = express() ;
//通過路由控制響應(yīng);
app.get('/',function(req,res){
res.end("mingming love dama")
})
app.listen(666 , function(){
console.log('express is running')
}) ;
效果同上
靜態(tài)文件
app.use(express.static('./public'))
以./public作為靜態(tài)文件倉庫的起始位置。
路由
將不同的請求分配給響應(yīng)的處理函數(shù)
三種路由的方法 :1) path方法 2)Router方式 3)route
1. path方法
app.get('/test',function(req,res){
res.send("id: "+req.query.id+" password: "+req.query.password);
})
當(dāng)我們請求http://localhost:3000/test?id=120&password=11001時(shí)會
這就是path方法設(shè)置路由。
2. Router方法
var express = require("express") ;
var app = express();
app.use(express.static('./public'))
//引入路由
var router = express.Router() ;
router.use(function log(){
console.log('Time: ', Date.now());
})
//調(diào)用路由
router.get('/',function(req,res){
res.send('Birds home page');
})
router.get('/about',function(req,res){
res.send('Birds about page')
})
router.get('/test',function(req,res){
res.send('Birds test page')
})
app.use('/bird',router)
app.listen(3000,function(){
console.log("express is running")
//監(jiān)聽成功得回掉方法
})
這樣就定制好了路由了
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
node.js缺少mysql模塊運(yùn)行報(bào)錯(cuò)的解決方法
前幾天在工作中需要利用node.js連接數(shù)據(jù)庫,通過網(wǎng)上的教程連接后運(yùn)行卻報(bào)錯(cuò)了,然后趕緊查找解決的方法,通過測試與朋友的提點(diǎn),終于解決了這個(gè)問題,現(xiàn)在將解決的方法分享給大家,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-11-11
Express 配置HTML頁面訪問的實(shí)現(xiàn)
這篇文章主要介紹了Express 配置HTML頁面訪問的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
我的Node.js學(xué)習(xí)之路(四)--單元測試
在專業(yè)化的軟件開發(fā)過程中,無論什么平臺語言,現(xiàn)在都需要UnitTest單元測試. Node.js有built-in的Assert。 今天讓我們來看一下Node.js的單元測試。在這兒我們使用nodeunit2014-07-07
node+experss實(shí)現(xiàn)爬取電影天堂爬蟲
本文給大家分享的是node+experss制作爬蟲的第二篇,我們來爬取電影天堂最新更新的電影迅雷下載鏈接,有需要的小伙伴可以參考下2016-11-11
Windows8下搭建Node.js開發(fā)環(huán)境教程
這篇文章主要介紹了Windows8下搭建Node.js開發(fā)環(huán)境教程,Win8下安裝node.js也比較簡單,只是一些權(quán)限比較麻煩,需要的朋友可以參考下2014-09-09

