node學習筆記

2021-10-03 23:32:09 字數 3395 閱讀 6681

node是什麼?

官網:如何安裝?

nodejs入門(一)—nodejs詳細安裝步驟

如何驗證安裝成功?

在cmd中輸入node -v

接下來就是正文了

怎樣建立伺服器

//引入http模組

//建立伺服器

//為伺服器物件新增請求事件

res.end("ok")

})//建立埠3000

const  mongoose = require('mongoose');

//資料庫連線 27017是資料庫的預設埠(可省略)

mongoose.connect('mongodb://localhost:/你資料庫的名字',)

.then(()=>console.log('資料庫連線成功了'))

.catch(()=>console.log('您的資料庫跑路了'))

注意:nodejs最好是模組化執行,可以把他放在不同的檔案中,通過引用的方式進行連線。

querystring模組提供用於解析和格式化 url 查詢字串的實用工具。 它可以使用以下方式訪問:

const querystring = require('querystring');
請求方式和請求位址

//獲取請求方式

const method =req.method;

//獲取請求位址

const = url.parse(req.url,true)

請求方式有兩種分別是get和post(是大寫的哦)通過get請求傳送的資料儲存在req.url中,

通過let=url.parse(req.url,true);可以在query獲取到對用的資料

url.parse()方法的第二個引數是布林值,預設情況下req.url的結果是字串型別的,通過url.parse

方法的第二引數來決定是否把字串轉為乙個物件,為ture時轉為物件

//用於建立**伺服器

// 當客戶端傳送請求的時候

//獲取請求報文資訊

/*console.log(req.headers);*/

res.writeheader(200,);

console.log(req.url);

let = url.parse(req.url,true);

console.log(query.name);

console.log(query.age);

//獲取請求位址

if(pathname == '/index' ||pathname == '/')else if(pathname == '/list')else

console.log(req.url);

//獲取客戶的請求方式

console.log(req.method);

if(req.method=='post')else if(req.method=='get')

// 響應

'');

});// 監聽3000埠

獲取post請求資料

post請求:要獲得post資料,可以以流的方式分段讀取。獲取到的資料拼接到乙個字串中:req.on(「data」,params=>),然後繫結end事件,在結束讀取的時候輸

出獲取到的資料,因為str是乙個字串,可以通過querystring模組的parse方法來轉為物件,然後再獲取到

對應的屬性值

//用於建立**伺服器

const querystring =require('querystring');

// 當客戶端傳送請求的時候

//post引數是通過事件的方式接受的

//data 當請求引數傳遞的時候觸發data事件

//end 當引數傳遞完後觸發end事件

let postpatams ='';

req.on('data',params=>);

req.on('end',()=>);

res.end('ok');

});// 監聽3000埠

用res.writeheader()方法,來防止頁面出現亂碼現象,200是頁面正常返回客戶端的編碼。

res.writeheader(200,);
在另乙個js檔案中建立建立使用者物件規則,其中的model物件建立連線資料庫的集合,如果沒有就他自己就會新建乙個

module.exports = user; 是將其匯出,提供其他檔案使用

const  mongoose = require('mongoose');

// //建立使用者物件規則

const userschema = new mongoose.schema(,

age:,

password:,

email:string,

hobbies:[string]

})//建立集合

const user = mongoose.model('user',userschema); //users

module.exports = user;

301與302的區別?

答:301是永久重定向,302是臨時重定向。(瀏覽器會不會記住的問題)

模組中匯出單個成員和匯出多個成員的方法?

+答:單個-->module.exports=***; 多個--->exports.***=***; 或module.exports=

package.json的用法

就是乙個產品說明書

dependencies 屬性。用來儲存第三方包的依賴資訊

所以建議每個專案都要有且只有乙個package.json(存放在專案的根目錄下)

我們可以通過 npm init -y 來生成package.json檔案

Node 學習筆記

一.第乙個node伺服器 傳送響應資料 hello world response.end hello world n listen 8888 終端列印如下資訊 console.log server running at 二.使用express搭建第乙個伺服器 var express require ...

Node學習筆記 http

querystring 第二個引數指定分隔符 也可以指定三個引數,效果和兩個引數類似 不同於querystring,下面是querystringfy的用法 queryescape與encodeuricomponent方法類似,能解析中文 node 建立乙個server 測試能不能從豆瓣請求到資料 在...

Node中Buffer學習筆記

js語言沒有二進位制資料型別,而在處理tcp和檔案流的時候,必須要處理二進位制資料。nodejs提供了乙個buffer物件來提供對二進位制資料的操作,比如檔案流的讀寫 網路請求資料的處理等。buffer是乙個全域性類,無需載入就可使用。buffer 存的都是16進製制的。建立乙個長度為 10 且用 ...