node.js 原生的post和get請求

把今天學到的東西記錄一下
const http = require('http')
// querystring 模塊提供用於解析和格式化 URL 查詢字符串的實用工具
const querystring = require('querystring')

const server = http.createServer((req, res) => {

    //  請求的方式
    const method = req.method

    // 獲取完整請求url
    const url = req.url

    // url路徑
    const path = url.split('?')[0]

    // 解析  get請求的參數  爲?後面  因此數組下標爲1
    const getParams = querystring.parse(url.split('?')[1])

    // 設置返回的格式  json格式
    res.setHeader('Content-type','application/json')

    // 返回的數據
    const resData = {
        method,
        url,
        path,
        getParams
    }

    // 0.若是是Post請求
    if (method === 'POST'){
       
        // 接收數據
        let postData = ''
        // chunk爲一點點數據,逐漸積累
        req.on('data', chunk => {
            postData += chunk.toString()
        })

        req.on('end', () => {
            resData.postData = postData
            // 在這裏返回 由於是異步
            res.end(
                // 返回json字字符串
                JSON.stringify(resData)
            )
        })
    }

    // 1. 若是是get請求
    if (method === 'GET'){
        // 返回
        res.end(
            // 返回json字字符串
            JSON.stringify(resData)
        )
    }

})

server.listen(8000)
相關文章
相關標籤/搜索