這篇文章主要介紹了nodejs怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
十多年的隴縣網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整隴縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“隴縣網(wǎng)站設(shè)計”,“隴縣網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
一、第一個nodejs應(yīng)用
n1_hello.js
console.log('hello word!');
在命令行cmd中執(zhí)行該文件(在該文件處打開命令行):
node n1_hello.js
在命令行cmd返回結(jié)果:
hello word!
二、nodejs基本格式
//步驟一:引入require模塊,require指令載入http模塊 var http = require('http'); //步驟二:創(chuàng)建服務(wù)器 http.createServer(function (request, response) { // 發(fā)送 HTTP 頭部 // HTTP 狀態(tài)值: 200 : OK // 內(nèi)容類型: text/html response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); //步驟三:接受請求與響應(yīng)請求 if(request.url!=='/favicon.ico'){ ...... // 發(fā)送響應(yīng)數(shù)據(jù) response.end('');//必須有,沒有則沒有協(xié)議尾 } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/');
三、nodejs調(diào)用函數(shù)
-----------------調(diào)用本地函數(shù)-----------------------------
var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); if(request.url!=='/favicon.ico'){ fun1(response); // 發(fā)送響應(yīng)數(shù)據(jù) response.end(''); } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/'); function fun1(res){ console.log('fun1'); res.write('hello,我是fun1'); }
-----------------調(diào)用外部函數(shù)-----------------------------
注意:外部函數(shù)必須寫在module.exports中,exports 是模塊公開的接口
------------(1)僅調(diào)用一個函數(shù)-----------
主程序中:
var http = require('http'); var otherfun = require("./models/otherfuns.js");//調(diào)用外部頁面的fun2 http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); if(request.url!=='/favicon.ico'){ otherfun(response);//支持一個函數(shù)時 response.end(''); } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/');
otherfuns.js中
function fun2(res){ console.log('fun2'); res.write('你好!,我是fun2'); } module.exports = fun2;//只支持一個函數(shù)
------------(2)調(diào)用多個函數(shù)-----------
主程序中:
var http = require('http'); var otherfun = require("./models/otherfuns.js");//調(diào)用寫函數(shù)的外部頁面otherfuns.js http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); if(request.url!=='/favicon.ico'){ //todo 以對象.方法名調(diào)用 otherfun.fun2(response); otherfun.fun3(response); //todo 以字符串調(diào)用對應(yīng)函數(shù)(結(jié)果同上) //otherfun['fun2'](response); //otherfun['fun3'](response); response.end(''); } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/'); }
otherfuns.js中
module.exports={ fun2:function(res){//匿名函數(shù) console.log('fun2'); res.write('你好!,我是fun2');//在頁面中輸出 }, fun3:function(res){ console.log('fun3'); res.write('你好!,我是fun3'); }, ...... }
四、nodejs路由初步
主程序n4_rout.js:
var http = require('http'); //引入url模塊 var url = require('url'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); if(request.url!=='/favicon.ico'){ var pathname = url.parse(request.url).pathname; pathname=pathname.replace(/\//,'');//替換掉前面的/ console.log(pathname); response.end(''); } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/');
在命令行cmd中執(zhí)行該文件,在訪問:http://localhost:8000/,在此輸入路由地址,如下圖,并觀察命令行。
五、nodejs讀取文件
主程序:
var http = require('http'); var optfile=require('./models/optfile');//導(dǎo)入文件 http.createServer(function (request, response) { // 發(fā)送 HTTP 頭部 // HTTP 狀態(tài)值: 200 : OK // 內(nèi)容類型: text/html response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'}); if(request.url!=='/favicon.ico'){//清除第2次訪問 optfile.readfileSync('./views/login.html');//同步調(diào)用讀取文件readfileSync()方法 //optfile.readfile('./views/login.html',response);//異步步調(diào)用讀取文件readfile()方法 response.end('ok!!!!!');//todo 不寫沒有協(xié)議尾 console.log('主程序執(zhí)行完畢!'); } }).listen(8000); // 終端打印如下信息 console.log('Server running at http://127.0.0.1:8000/');
optfile.js中:
var fs=require('fs');//Node 導(dǎo)入文件系統(tǒng)模塊(fs)語法 導(dǎo)入fs操作文件的類 module.exports={ readfileSync:function(path){ // 同步讀取 var data = fs.readFileSync(path,'utf-8');//以中文讀取同步文件路徑path console.log("同步方法執(zhí)行完畢。"); }, readfile:function(path){ // 異步讀取 fs.readFile(path,function (err, data) { if (err) { console.error(err); }else{ console.log("異步讀取: " + data.toString()); } }); console.log("異步方法執(zhí)行完畢。"); }, }
結(jié)果:命令行cmd中
(1)同步讀取文件時:
(2)異步讀取文件時:(常用)
網(wǎng)頁中:均為:
感謝你能夠認真閱讀完這篇文章,希望小編分享的“nodejs怎么用”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!