nodejsルート--getとpost要求
4579 ワード
get要求post要求
nodejs , get post , nodejs , nodejs , , nodejs get post
ポスト要求:node , 。 , 。 , post :
var alldata = "";
req.addListener("data",function(chunk){
alldata += chunk;
});
//
req.addListener("end",function(){
console.log(alldata.toString());
res.end("success");
});
上の式から分かるように、nodejs受信フォームは二つの部分に分けてaddListenerがあります.一つは絶えずデータブロックを受信して、一つは全部受信したことを表しています.だから、元生はPOST処理を書いて、複雑です.二つのモニターを書きます.ファイルアップロード業務は書きにくいです.ファイルアップロードは第三者モジュール、formidableを使います.注意:ファイルのアップロードに関連している限り、フォームラベルに属性を追加します.でないと、アップロードは空です.<form action="http://127.0.0.1/dopost" method="post" enctype="multipart/form-data">
次にこのコードはformidableモジュールを使ってフォームを受信して画像をアップロードします.var http = require("http");
var formidable = require('formidable');
var util = require("util");//
//
var server = http.createServer(function(req,res){
// , post
if(req.url == "/dopost" && req.method.toLowerCase() == "post"){
//Creates a new incoming form.
var form = new formidable.IncomingForm();
//
form.uploadDir = "./uploads";
// , 。
form.parse(req, function(err, fields, files) {
if(err){
throw err;
}
console.log(fields);
console.log(files);
console.log(util.inspect({fields: fields, files: files}));
// 、 , fields ;
// ,files
res.writeHead(200, {'content-type': 'text/plain'});
res.end(" ");
});
}
});
server.listen(80,"127.0.0.1");
get要求get ,
var server = http.createServer(function(req,res){
if(req.url === '/admin'){
res.write('admin ');
res.end();// res.end() //
}
}
前にも言ったように、urlにはいくつかのパラメータがあります.urlやpathモジュールを参照してもいいです.中にはurlの中の照会パラメータを取るためのインターフェースがあります.