nodejs實(shí)例解析(輸出hello world)
下面將帶領(lǐng)大家一步步學(xué)習(xí)nodejs,知道怎么使用nodejs搭建服務(wù)器,響應(yīng)get/post請求,連接數(shù)據(jù)庫等。
搭建服務(wù)器頁面輸出hello world
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此訪問 node.js bug,第二次訪問/favicon.ico
console.log('訪問');
response.write('hello,world 世界');
response.end();//不寫則沒有http協(xié)議尾
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
/*
啟動服務(wù)
cmd下執(zhí)行:
node 1_helloworld.js
瀏覽器訪問:http://localhost:8000
*/
基本語句說明:
1)require 語句,模塊通過它加載。
對于該語句的解析可參見文章《node.js require() 源碼解讀》(http://www.dhdzp.com/article/76308.htm)
2)http.createServer(function(req, res){ }).listen(8000);
方法說明:
該函數(shù)用來創(chuàng)建一個HTTP服務(wù)器,并將 requestListener 作為 request 事件的監(jiān)聽函數(shù)。最后調(diào)用listen函數(shù),監(jiān)聽端口。
接收參數(shù):
requestListener 請求處理函數(shù),自動添加到 request 事件,函數(shù)傳遞兩個參數(shù):
req 請求對象,想知道req有哪些屬性,可以查看 “http.request 屬性整合”。
res 響應(yīng)對象 ,收到請求后要做出的響應(yīng)。想知道res有哪些屬性,可以查看 “http.response屬性整合”。
3)response.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});
方法說明:
向請求的客戶端發(fā)送響應(yīng)頭。
接收參數(shù):
statusCode HTTP狀態(tài)碼,如200(請求成功),404(未找到)等。
headers 類似關(guān)聯(lián)數(shù)組的對象,表示響應(yīng)頭的每個屬性
該函數(shù)在一個請求內(nèi)最多只能調(diào)用一次,如果不調(diào)用,則會自動生成一個響應(yīng)頭。
4)response.end()
方法說明:
結(jié)束響應(yīng),告訴客戶端所有消息已經(jīng)發(fā)送。當(dāng)所有要返回的內(nèi)容發(fā)送完畢時,該函數(shù)必須被調(diào)用一次。
如何不調(diào)用該函數(shù),客戶端將永遠(yuǎn)處于等待狀態(tài)。
將上面的代碼復(fù)制保存到1_helloworld.js,cmd下執(zhí)行語句:node 1_helloworld.js 。再去瀏覽器訪問:http://localhost:8000

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
Node.js實(shí)現(xiàn)連接mysql數(shù)據(jù)庫功能示例
這篇文章主要介紹了Node.js實(shí)現(xiàn)連接mysql數(shù)據(jù)庫功能,簡單分析了nodejs連接數(shù)據(jù)庫的操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-09-09
詳解node-ccap模塊生成captcha驗(yàn)證碼
本篇文章主要介紹了node-ccap模塊生成captcha驗(yàn)證碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07
nodejs使用socket5進(jìn)行代理請求的實(shí)現(xiàn)
這篇文章主要介紹了nodejs使用socket5進(jìn)行代理請求的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
Node.js中的process.nextTick使用實(shí)例
這篇文章主要介紹了Node.js中的process.nextTick使用實(shí)例,nextTick函數(shù)有什么用、怎么用、和setTimeout有什么區(qū)別呢,本文就講解了這些知識,需要的朋友可以參考下2015-06-06
express框架實(shí)現(xiàn)基于Websocket建立的簡易聊天室
本篇文章主要介紹了express框架實(shí)現(xiàn)基于Websocket建立的簡易聊天室,具有一定的參考價值,有興趣的可以了解一下2017-08-08
Nodejs 發(fā)布自己的npm包并制作成命令行工具的實(shí)例講解
今天小編就為大家分享一篇Nodejs 發(fā)布自己的npm包并制作成命令行工具的實(shí)例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05
使用 NodeJS+Express 開發(fā)服務(wù)端的簡單介紹
這篇文章主要介紹了使用 NodeJS+Express 開發(fā)服務(wù)端的簡單介紹,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04

