原生node中獲取get post請求引數的方式

2021-10-09 21:35:47 字數 1393 閱讀 7837

1. 處理get請求引數

node有自己的核心模組,在這裡就用到了url模組。

url.parse();方法可以將乙個完整的url位址,分為很多部分,常用的有:host、port、pathname、path、query。

第乙個引數是位址,

第二個引數預設是false,設定為ture後,其query屬性就會從查詢字串格式(「a=1&b=2」)轉換為了物件格式()。

var urlobj = url.parse(req.url ,true);

var query = urlobj.query;

console.log(urlobj);

console.log(query);

//結果

url ,

pathname: '/index.html',

path: '/index.html?a=9&c=5',

href: '/index.html?a=9&c=5'

}[object: null prototype]

2. 處理post請求引數

獲得post引數物件,需要用到第三方包querystring

//1.建立空字元疊加資料片段

var data = '';

//2.註冊data事件接收資料(每當收到一段表單提交的資料,該方法會執行一次)

req.on('data', function (chunk) );

// 3.當接收表單提交的資料完畢之後,就可以進一步處理了

//註冊end事件,所有資料接收完成會執行一次該方法

//使用querystring對url進行反序列化(解析url將&和=拆分成鍵值對),得到乙個物件

req.on('end', function () );

express獲取引數

1.獲取請求引數物件req.query

req.query;
2.獲取post請求引數物件req.body

body-parser是express常用的乙個中介軟體,用來解析表單的post請求資料

body-parser用來處理不同型別的請求體、不同的編碼、不同的壓縮型別等

//配置

var bodyparser = require("body-parser");

//使用

req.body;

原生cluster實現node熱過載

node伺服器需要重啟才能執行改動後的 如果在生產環境中重啟會造成使用者幾秒鐘的無響應。針對這一問題,我們可以利用cluster模組來實現基於express框架的零秒熱過載。master程序開啟乙個監聽重啟命令的http伺服器,監聽重啟命令後,fork乙個新的工作程序,等新的工作程序建立完成時,ki...

node獲取本機IP

前言 我們在本地移動端除錯的時候,ip會根據連線的熱點不斷變化,但是我們又不想每次都手動去修改這個ip,此時,我們使用webpack.defineplugin node進行配置 首先,我們使用node獲取到本地ip 獲取本機電腦ip function getipadress 其次,結合webpack...

使用原生node做乙個簡單的node伺服器

const http require http 伺服器模組 const fs require fs 檔案讀取 const url require url 解析url位址 const querystring require querystring 解析post資料 const zlib require...