GET和POST是最經常使用的HTTP請求方法,除此以外還有DELETE、HEAD、OPTIONS、PUT、TRACE等,但都不多用到。html
GET | POST |
---|---|
主要用途是獲取數據 | 主要用途是發送數據 |
數據放在HTTP請求Header中,經過URL進行傳輸,容量≤32K | 數據放在HTTP請求Body中,容量大,一般上限是2G |
咱們能夠使用Nodejs自帶的url和querystring模塊處理接收到的GET數據。git
首先新建一個帶form表單的HTML文件,講輸入的數據提交到服務器地址:github
示例代碼:/lesson06/form_get.htmlbash
<form action="http://localhost:8080/login" method="get">
用戶:<input type="text" name="username"><br/>
密碼:<input type="text" name="password"><br/>
<input type="submit" value="提交">
</form>
複製代碼
服務端在接收到請求數據時,能夠有3種方式處理數據:服務器
示例代碼:/lesson06/server.jsless
const [ pathname, queryStr ] = req.url.split('?')
const query = querystring.parse(queryStr)
console.log(pathname, query)
複製代碼
const url = new URL(`http://localhost:8080${req.url}`)
const { pathname, search } = url
const query = querystring.parse(search.substring(1, url.search.length))
console.log(pathname, query)
複製代碼
// parse方法第二個參數若傳true,則會直接將解析出的query值轉爲對象形式,不然它只是字符串形式
const { pathname, query } = url.parse(req.url, true)
console.log(pathname, query)
複製代碼