让前端飞

六:node——post请求

2018-06-18  本文已影响10人  椰果粒

post请求的数据比get大的多,所以post是分段发送请求的
post方式接收数据用 res.on
举个栗子:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="http://localhost:3333/" method="post">
    用户名:<input type="text" name="user">
    密码:<input type="password" name="pass">
    <textarea name="text" id="" cols="30" rows="10"></textarea>
    <input type="submit" value="提交">
</form>
</body>
</html>
const http = require("http")
const querystring = require("querystring")

http.createServer(function(req,res){
    // post接收数据的方式是用 req.on
    // get方式直接 req.url

    var str = ''
    var i = 0
    // data 表示每当有一段数据发送的时候,就触发一次(一共会发生很多次)
    req.on('data',function(data){
        // console.log(`第${i++}次发送数据`)
        str += data
    })
    // 数据全部到达时,只发生一次
    req.on('end',function(){
        var post = querystring.parse(str)
        console.log(post)
        console.log("ok")
    })
}).listen(3333)

结果:

{ user: 'LISI', pass: '123', text: '123' }
ok

关于queryString模块

上一篇 下一篇

猜你喜欢

热点阅读