欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nodejs基礎(chǔ)應(yīng)用

 更新時(shí)間:2017年02月03日 10:54:24   作者:君邪兒  
本文主要介紹了nodejs的基礎(chǔ)應(yīng)用。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧

一、第一個(gè)nodejs應(yīng)用

n1_hello.js

console.log('hello word!');

在命令行cmd中執(zhí)行該文件(在該文件處打開(kāi)命令行):

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)容類(lèi)型: text/html
 response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'});
//步驟三:接受請(qǐng)求與響應(yīng)請(qǐng)求
 if(request.url!=='/favicon.ico'){
   ......
  // 發(fā)送響應(yīng)數(shù)據(jù)
  response.end('');//必須有,沒(méi)有則沒(méi)有協(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ù)必須寫(xiě)在module.exports中,exports 是模塊公開(kāi)的接口

------------(1)僅調(diào)用一個(gè)函數(shù)-----------

主程序中:

var http = require('http');
var otherfun = require("./models/otherfuns.js");//調(diào)用外部頁(yè)面的fun2
http.createServer(function (request, response) {
 response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'});
 if(request.url!=='/favicon.ico'){
  otherfun(response);//支持一個(gè)函數(shù)時(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;//只支持一個(gè)函數(shù)

------------(2)調(diào)用多個(gè)函數(shù)-----------

主程序中:

var http = require('http');
var otherfun = require("./models/otherfuns.js");//調(diào)用寫(xiě)函數(shù)的外部頁(yè)面otherfuns.js
http.createServer(function (request, response) {
 response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'});
 if(request.url!=='/favicon.ico'){
  //todo 以對(duì)象.方法名調(diào)用
  otherfun.fun2(response);
  otherfun.fun3(response);
  //todo 以字符串調(diào)用對(duì)應(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');//在頁(yè)面中輸出
 },
 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í)行該文件,在訪(fǎng)問(wèn):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)容類(lèi)型: text/html
 response.writeHead(200, {'Content-Type': 'text/html;chaset=utf-8;'});
 if(request.url!=='/favicon.ico'){//清除第2次訪(fǎng)問(wèn)
  optfile.readfileSync('./views/login.html');//同步調(diào)用讀取文件readfileSync()方法
  //optfile.readfile('./views/login.html',response);//異步步調(diào)用讀取文件readfile()方法
  response.end('ok!!!!!');//todo 不寫(xiě)沒(méi)有協(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)語(yǔ)法 導(dǎo)入fs操作文件的類(lèi)
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)同步讀取文件時(shí):

  

(2)異步讀取文件時(shí):(常用)

  

   網(wǎng)頁(yè)中:均為:

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!

相關(guān)文章

  • node.js爬取中關(guān)村的在線(xiàn)電瓶車(chē)信息

    node.js爬取中關(guān)村的在線(xiàn)電瓶車(chē)信息

    這篇文章主要給大家介紹了關(guān)于利用node.js如何爬取中關(guān)村的在線(xiàn)電瓶車(chē)信息的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • Node錯(cuò)誤處理筆記之挖坑系列教程

    Node錯(cuò)誤處理筆記之挖坑系列教程

    因?yàn)閚odejs是單線(xiàn)程的,所以一旦發(fā)生錯(cuò)誤或異常,如果沒(méi)有及時(shí)被處理整個(gè)系統(tǒng)就會(huì)崩潰。下面這篇文章主要給大家介紹了關(guān)于Node錯(cuò)誤處理筆記之挖坑系列的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧
    2018-06-06
  • 我的Node.js學(xué)習(xí)之路(四)--單元測(cè)試

    我的Node.js學(xué)習(xí)之路(四)--單元測(cè)試

    在專(zhuān)業(yè)化的軟件開(kāi)發(fā)過(guò)程中,無(wú)論什么平臺(tái)語(yǔ)言,現(xiàn)在都需要UnitTest單元測(cè)試. Node.js有built-in的Assert。 今天讓我們來(lái)看一下Node.js的單元測(cè)試。在這兒我們使用nodeunit
    2014-07-07
  • nodejs實(shí)現(xiàn)遍歷文件夾并統(tǒng)計(jì)文件大小

    nodejs實(shí)現(xiàn)遍歷文件夾并統(tǒng)計(jì)文件大小

    這篇文章主要介紹了nodejs實(shí)現(xiàn)遍歷文件夾并統(tǒng)計(jì)文件大小,下面使用nodejs的遍歷文件夾文件內(nèi)容,并且讀取所有的文件,并采取排序往大到小的順序進(jìn)行輸出,需要的朋友可以參考下
    2015-05-05
  • Nodejs探秘之深入理解單線(xiàn)程實(shí)現(xiàn)高并發(fā)原理

    Nodejs探秘之深入理解單線(xiàn)程實(shí)現(xiàn)高并發(fā)原理

    這篇文章主要介紹了Nodejs單線(xiàn)程實(shí)現(xiàn)高并發(fā)原理,對(duì)Node.js感興趣的同學(xué),可以參考下
    2021-04-04
  • 使用pm2運(yùn)行node應(yīng)用的流程步驟

    使用pm2運(yùn)行node應(yīng)用的流程步驟

    PM2是一個(gè)功能強(qiáng)大的進(jìn)程管理工具,專(zhuān)為?Node.js?應(yīng)用設(shè)計(jì),它提供了進(jìn)程管理、日志管理、負(fù)載均衡和性能監(jiān)控等功能,幫助開(kāi)發(fā)者輕松應(yīng)對(duì)生產(chǎn)環(huán)境中的各種挑戰(zhàn),本文給大家介紹了使用pm2?運(yùn)行node應(yīng)用的流程步驟,需要的朋友可以參考下
    2024-03-03
  • 詳解如何使用koa實(shí)現(xiàn)socket.io官網(wǎng)的例子

    詳解如何使用koa實(shí)現(xiàn)socket.io官網(wǎng)的例子

    這篇文章主要介紹了詳解如何使用koa實(shí)現(xiàn)socket.io官網(wǎng)的例子,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • NodeJs安裝npm包一直失敗的解決方法

    NodeJs安裝npm包一直失敗的解決方法

    本篇文章主要介紹了NodeJs安裝npm包一直失敗的解決方法。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧
    2017-04-04
  • Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法

    Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法

    這篇文章主要介紹了Node使用koa2實(shí)現(xiàn)一個(gè)簡(jiǎn)單JWT鑒權(quán)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • nodejs中的express-jwt的使用解讀

    nodejs中的express-jwt的使用解讀

    這篇文章主要介紹了nodejs中的express-jwt的使用解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04

最新評(píng)論