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

NodeJs內(nèi)置模塊超詳細(xì)講解

 更新時間:2023年01月10日 10:12:28   作者:落雪小軒韓  
Node.js內(nèi)置模塊也叫核心模塊,跟隨Node.js一起安裝。console模塊提供了一個簡單的調(diào)試控制臺,類似于網(wǎng)絡(luò)瀏覽器提供的?JavaScript控制臺機(jī)制

一、fs文件系統(tǒng)模塊

1、fs.readFile()讀取文件

參數(shù)1(必):讀取文件的存放路徑

參數(shù)2(選):采用的編碼格式,一般默認(rèn)utf8

參數(shù)3(必):回調(diào)函數(shù),拿到讀取成功和失敗的結(jié)果

const fs = require('fs')
fs.readFile('./hello.txt','utf8',function(err,dataStr) {
	// 如果讀取成功,則err值為null
	// 如果讀取失敗,則err值為錯誤對象,dataStr值為undefined
	if(err) {
		return console.log('文件讀取失?。? + err.message)
	}
	console.log('文件讀取成功:' + dataStr)
})

2、fs.writeFile()寫入文件

參數(shù)1(必):寫入文件的存放路徑

參數(shù)2(必):要寫入的內(nèi)容

參數(shù)3(選):采用的編碼格式,一般默認(rèn)utf8

參數(shù)4(必):回調(diào)函數(shù),拿到寫入成功和失敗的結(jié)果

const fs = require('fs')
fs.readFile('./hello.txt','hello world',function(err) {
	// 如果寫入成功,則err值為null
	// 如果寫入失敗,則err值為錯誤對象
	if(err) {
		return console.log('文件寫入失?。? + err.message)
	}
	console.log('文件寫入成功')
})

3、fs路徑問題

描述:在操作文件時,如果提供的操作路徑是相對路徑,很容易出現(xiàn)路徑動態(tài)拼接錯誤問題

原因:代碼運行的時候,會以執(zhí)行node命令時所處的目錄,動態(tài)拼接出被 操作文件的完整路徑

解決方案:直接提供完整的路徑

// __dirname 表示當(dāng)前文件所處的目錄
fs.readFile(__dirname + '/hello.txt','utf8',function(err,dataStr) {
})

二、path路徑模塊

1、path.join()拼接路徑

涉及到路徑拼接的操作,都要使用path.join()方法進(jìn)行處理,不要直接使用 + 進(jìn)行字符串的拼接,如果拼接的路徑有.就會出問題,而path.join()可以處理掉這個.

const path = require('path')
const pathStr = path.join('/a','/b/c','../','/d','/e')
console.log(pathStr) // \a\b\d\e

注意: ../會抵消前面一層路徑

2、path.basename()獲取路徑中的文件名

參數(shù)1(必):路徑字符串

參數(shù)2(選):文件擴(kuò)展名

const path = require('path')
const fpath = '/a/b/c/index.html'
const fullName = path.basename(fpath)
console.log(fullName); // index.html
const nameWithoutExt = path.basename(fpath,'.html')
console.log(nameWithoutExt ); // index

3、path.extname()獲取路徑中的文件擴(kuò)展名

參數(shù)(必):路徑字符串

const path = require('path')
const fpath = '/a/b/c/index.html'
const fext = path.extname(fpath)
console.log(fext); // .html

三、http模塊

用來創(chuàng)建web服務(wù)器的模塊

1、創(chuàng)建最基本的web服務(wù)器

1、引入http核心模塊

2、創(chuàng)建Web服務(wù)器實例

3、為服務(wù)器綁定request事件,監(jiān)聽客戶端的請求

4、啟動服務(wù)器

const http = require('http')
const server = http.createServer()
server.on('request',function(req,res) {
	console.log('Someone visit our web server.')
})
server.listen(8080,function() {
	console.log('server running at http://127.0.0.1:8080')
})

2、req請求對象

在事件處理函數(shù)中訪問與客戶端相關(guān)的數(shù)據(jù)或?qū)傩?/p>

server.on('request',(req) => {
	// req.url 是客戶端請求的 URL 地址
	// req.method 是客戶端的 method 請求類型
})

3、res響應(yīng)對象

在事件處理函數(shù)中訪問與服務(wù)器相關(guān)的數(shù)據(jù)或?qū)傩?/p>

server.on('request',(req,res) => {
	const str = `您請求的URL地址是${req.url},請求的method類型為${req.method}`
	// 調(diào)用 res.setHeader()方法設(shè)置 Content-Type 響應(yīng)頭,解決中文亂碼的問題
	res.setHeader('Content-Type','text/html;charset=utf-8')
	// res.end()方法,向客戶端響應(yīng)內(nèi)容
	res.end(str)
})

4、根據(jù)不同的url響應(yīng)不同的內(nèi)容

server.on('request',(req,res) => {
	const url = req.url
	let content = '<h1>404 Not Found</h1>'
	if(url === '/' || url === '/index.html') {
		content = '<h1>首頁</h1>'
	} else if(url === '/about.html') {
		content = '<h1>關(guān)于</h1>'
	}
	res.setHeader('Content-Type','text/html;charset=utf-8')
	res.end(content)
})

到此這篇關(guān)于NodeJs內(nèi)置模塊超詳細(xì)講解的文章就介紹到這了,更多相關(guān)NodeJs內(nèi)置模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node?path的使用詳解

    node?path的使用詳解

    這篇文章主要介紹了node?path的使用詳解,使用path.join()方法,可以把多個路徑片段拼接為完整的路徑字符串,本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • Dapr+NestJs編寫Pub及Sub裝飾器實戰(zhàn)示例

    Dapr+NestJs編寫Pub及Sub裝飾器實戰(zhàn)示例

    這篇文章主要為大家介紹了Dapr+NestJs編寫Pub及Sub裝飾器的實戰(zhàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • nodejs npm install全局安裝和本地安裝的區(qū)別

    nodejs npm install全局安裝和本地安裝的區(qū)別

    這篇文章主要介紹了nodejs npm install 全局安裝和非全局安裝的區(qū)別,即帶參數(shù)-g和不帶參數(shù)-g安裝的區(qū)別,需要的朋友可以參考下
    2014-06-06
  • nodejs實現(xiàn)郵箱發(fā)送驗證碼功能

    nodejs實現(xiàn)郵箱發(fā)送驗證碼功能

    開發(fā)個人網(wǎng)站時,注冊頁面可以使用郵箱驗證,于是記錄一下如何用nodejs/express服務(wù)器實現(xiàn)郵箱發(fā)送驗證碼,不僅可以在郵箱注冊時使用,還可以拓展用于各種安全驗證,本文給大家介紹了使用nodejs實現(xiàn)郵箱發(fā)送驗證碼功能,需要的朋友可以參考下
    2024-07-07
  • Nodejs sublime text 3安裝與配置

    Nodejs sublime text 3安裝與配置

    Sublime Text是一個輕量、簡潔、高效、跨平臺的編輯器,方便的配色以及兼容vim快捷鍵等各種優(yōu)點博得了很多前端開發(fā)人員的喜愛!Sublime Text這款程序員必備代碼編輯器,幾乎每位程序員提到Sublime Text都是贊不絕口!它體積小巧,無需安裝,綠色便攜
    2014-06-06
  • 淺談Nodejs中的作用域問題

    淺談Nodejs中的作用域問題

    在JS中有全局作用域和函數(shù)作用域,而在Nodejs中也自己的作用域,分為全局作用域(global)和模塊作用域。本文將對Nodejs中的作用域進(jìn)行介紹,需要的朋友一起來看下吧
    2016-12-12
  • nodejs中各種加密算法的實現(xiàn)詳解

    nodejs中各種加密算法的實現(xiàn)詳解

    這篇文章主要給大家介紹了關(guān)于nodejs中各種加密算法的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用nodejs具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • OpenSCA技術(shù)原理npm依賴示例解析

    OpenSCA技術(shù)原理npm依賴示例解析

    這篇文章主要為大家介紹了OpenSCA技術(shù)原理npm依賴示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • 最新評論