html - node.js为啥抓取不了前端传过来的数据?
ringa_lee
ringa_lee 2017-04-17 15:00:14
0
1
658

用node.js抓取不了前端表单的数据,哭哭哭
这是node.js代码

var http=require("http");
var url=require("url");
var dns=require("dns");
var fs=require("fs");
var querystring=require("querystring");
var postdata="";
http.createServer(function(req,res){
    
        req.setEncoding("utf8");
    //var readPath=dirname+"/"+url.parse('a.html').pathname;
    var pathname=url.parse(req.url).pathname;

    if(pathname==="/"){
        res.writeHead(200,{'Content-Type':'text/html'});
        var indexpage=fs.readFileSync("a.html");
    //console.log(indexpage);
    res.end(indexpage);
    }
    if(pathname==="/about"){
        res.writeHead(200,{'Content-Type':'text/plain'});
        
        
        req.addListener("data",function(chunk){
            if(chunk){
                postdata+=chunk;
               console.log(chunk);
            }
            
            else
                console.log("no data emit")
        });
            req.addListener("end",function(postdata){
                var a=querystring.parse(postdata);
                console.log(postdata)
                console.log(a);
                res.end(a.text);
            });
        }

    
    console.log("Server has been running on port 3000");
    
}).listen("3000","127.0.0.1");

这是HTML代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="sinson">
</head>
<body>
<form action="/about" method="get">
<input type="text" name="text">
<input type="submit" value="提交">
</form>
</body>
</html>

求大神指教

ringa_lee
ringa_lee

ringa_lee

全員に返信(1)
小葫芦

データの body 部分のみを処理しましたが、フロントエンドの送信メソッドは get...
getpost の基本的な違いを理解することをお勧めします。 .


修正後
app.js

リーリー

a.html

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート