亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用NODE.JS創(chuàng)建一個(gè)WEBSERVER(服務(wù)器)的步驟

 更新時(shí)間:2021年06月23日 10:41:38   作者:是小張啊  
在 node.js 中創(chuàng)建一個(gè)服務(wù)器非常簡單,只需要使用 node.js 為我們提供的 http 模塊及相關(guān) API 即可創(chuàng)建一個(gè)麻雀雖小但五臟俱全的web 服務(wù)器,相比 Java/Python/Ruby 搭建web服務(wù)器的過程簡單的很。本文簡單的講解下實(shí)現(xiàn)步驟

什么是 nodejs

Node.js發(fā)布于2009年5月,由Ryan Dahl開發(fā),是一個(gè)基于Chrome V8引擎的JavaScript運(yùn)行環(huán)境,使用了一個(gè)事件驅(qū)動(dòng)、非阻塞式I/O模型, 讓JavaScript 運(yùn)行在服務(wù)端的開發(fā)平臺(tái),它讓JavaScript成為與PHP、Python、Perl、Ruby等服務(wù)端語言平起平坐的腳本語言。
Node.js對(duì)一些特殊用例進(jìn)行優(yōu)化,提供替代的API,使得V8在非瀏覽器環(huán)境下運(yùn)行得更好,V8引擎執(zhí)行Javascript的速度非???,性能非常好,基于Chrome JavaScript運(yùn)行時(shí)建立的平臺(tái), 用于方便地搭建響應(yīng)速度快、易于擴(kuò)展的網(wǎng)絡(luò)應(yīng)用

安裝nodejs

nodejs官站

檢查是否安裝成功

$ node -v 
v14.16.1

如何使用node創(chuàng)建hello world?

1.編寫javascript腳本文件

var foo = 'hello world'
console.log(foo)

2、運(yùn)行文件

$ node filename

注:文件不能使用node命名,最好也不要使用中文

如何使用nodejs讀寫文件

// 1、使用 requrie 加載 fs 核心使用模塊
var file = require('fs')

// 2、讀取文件
file.readFile('hello.txt', function(error, data){
    // 文件默認(rèn)存儲(chǔ)二進(jìn)制 需要 toString
    if(error != null){
        console.log('file dons not exits or read fail')
        return
    }
    console.log(data.toString())
})

// 3、寫文件 
// 文件路徑  文件內(nèi)容  回調(diào)函數(shù)
file.writeFile('hello.txt', 'hello world' , function(error, data){
    if(error != null){
        console.log('write fail')
        return
    }
    console.log('write success')
})

使用nodejs創(chuàng)建web服務(wù)器

// 1、使用 requrie 加載 http 核心使用模塊
var http = require('http')

// 2、http.createServer 創(chuàng)建服務(wù)器實(shí)例
var server = http.createServer()

// 3、創(chuàng)建請(qǐng)求響應(yīng)
server.on('request', function(request, response){
    console.log('正在請(qǐng)求接口...')
    response.write('Hello World')
    // 必須 end 方法結(jié)束
    response.end()
})

// 4、綁定端口號(hào) 啟動(dòng)服務(wù)器
server.listen(8090, function(){
    console.log('Server running at http://127.0.0.1:8090/')
})

如何根據(jù)不同的請(qǐng)求路徑返回不同數(shù)據(jù)

var http = require('http')

var server = http.createServer();

server.on('request', function(request, response){
    // 獲取請(qǐng)求路徑
    var url =  request.url
    
    // 根據(jù)請(qǐng)求路徑返回不同的信息
    if (url == '/') {
        response.end('index page')
    } else if (url == '/login') {
        response.end('login page')
    } else {
        response.end('404 page')
    }
  
})

server.listen('8081', function(){
    console.log('Server running at http://127.0.0.1:8081/');
})

將數(shù)據(jù)響應(yīng)到前端

響應(yīng)(返回)的內(nèi)容只能是 二進(jìn)制數(shù)據(jù)或者是字符串

[
    {
        "name": "Iphone 12",
        "price": 6799
    },
    {
        "name": "MacBook Air M1",
        "price": 7999
    }
]

如果想將數(shù)據(jù)返回到頁面上,只能將json數(shù)據(jù)組裝成字符串

if (url == '/products') {
    var products = [
        {
            name : 'Iphone 12',
            price : 6799
        },
        {
            name : 'MacBook Air M1',
            price : 7999
        }
    ]
    response.end(JSON.stringify(products))
}

以上就是使用NODE.JS創(chuàng)建一個(gè)WEBSERVER的步驟的詳細(xì)內(nèi)容,更多關(guān)于Node.js創(chuàng)建WEBSERVER的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • NestJS實(shí)現(xiàn)接口的多版本管理

    NestJS實(shí)現(xiàn)接口的多版本管理

    在軟件開發(fā)中,隨著應(yīng)用的迭代更新,經(jīng)常需要引入新的接口版本同時(shí)保留舊版本以保證向后兼容,本教程將通過 NestJS 框架演示如何實(shí)現(xiàn)接口的多版本管理,感興趣的小伙伴跟著小編一起來看看吧
    2024-06-06
  • node如何將package.json中的包降為低版本或者升級(jí)為高版本

    node如何將package.json中的包降為低版本或者升級(jí)為高版本

    比如現(xiàn)在你用某個(gè)包的當(dāng)前版本,但是你安裝的版本高了,那么你應(yīng)該這么做,首先刪除node項(xiàng)目中的node_modules目錄,防止安裝時(shí)的包不一致,下面給大家介紹node將package.json中的包降為低版本或者升級(jí)為高版本的方法,感興趣的朋友一起看看吧
    2023-11-11
  • Node.js模擬發(fā)起http請(qǐng)求從異步轉(zhuǎn)同步的5種用法

    Node.js模擬發(fā)起http請(qǐng)求從異步轉(zhuǎn)同步的5種用法

    這篇文章主要介紹了Node.js模擬發(fā)起http請(qǐng)求從異步轉(zhuǎn)同步的5種方法,下面總結(jié)了幾個(gè)常見的庫 API 從異步轉(zhuǎn)同步的幾種方法。需要的朋友可以參考下
    2018-09-09
  • 一文帶你搞懂Node中的流

    一文帶你搞懂Node中的流

    流,通俗來講就是數(shù)據(jù)流動(dòng),數(shù)據(jù)從一個(gè)地方緩慢的流到另一個(gè)地方。本文將通過示例為大家詳細(xì)講講Node中的流,感興趣的可以了解一下
    2022-08-08
  • 如何利用Node.js與JSON搭建簡單的動(dòng)態(tài)服務(wù)器

    如何利用Node.js與JSON搭建簡單的動(dòng)態(tài)服務(wù)器

    這篇文章主要給大家介紹了關(guān)于如何利用Node.js與JSON搭建簡單的動(dòng)態(tài)服務(wù)器的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 關(guān)于NodeJS中的循環(huán)引用詳解

    關(guān)于NodeJS中的循環(huán)引用詳解

    這篇文章主要給大家介紹了關(guān)于NodeJS中的循環(huán)引用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用NodeJS具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Nodejs 搭建簡單的Web服務(wù)器詳解及實(shí)例

    Nodejs 搭建簡單的Web服務(wù)器詳解及實(shí)例

    這篇文章主要介紹了Nodejs 搭建簡單的Web服務(wù)器詳解及實(shí)例的相關(guān)資料,并附實(shí)例代碼和實(shí)現(xiàn)效果圖,需要的朋友可以參考下
    2016-11-11
  • 什么是MEAN?JavaScript編程中的MEAN是什么意思?

    什么是MEAN?JavaScript編程中的MEAN是什么意思?

    這篇文章主要介紹了什么是MEAN?JavaScript編程中的MEAN是什么意思?,跟lampp一樣,MEAN是指現(xiàn)代web應(yīng)用全棧開發(fā)工具一個(gè)組合,需要的朋友可以參考下
    2014-12-12
  • Nodejs中自定義事件實(shí)例

    Nodejs中自定義事件實(shí)例

    這篇文章主要介紹了Nodejs中自定義事件實(shí)例,比較簡單的一個(gè)例子,需要的朋友可以參考下
    2014-06-06
  • node.js解決全局安裝pnpm后無法使用的問題

    node.js解決全局安裝pnpm后無法使用的問題

    在全局安裝pnpm后,如果出現(xiàn)無法使用的問題,一般是由于沒有添加系統(tǒng)變量導(dǎo)致的,本文就來介紹一下node.js解決全局安裝pnpm后無法使用的問題,感興趣的可以了解一下
    2024-10-10

最新評(píng)論