參考html
步驟
var http = require("http");
/** * request 請求 輸入-請求的信息 * response 響應 輸出-輸出的東西 * http 模塊提供的函數: createServer 。這個函數會返回 一個對象,這個對象有一個叫作 listen 的方法,這個方法有一個數值參數, 指定這個 HTTP 服務器監聽的端口號。 */ http.createServer(function (req, res) { switch (req.url){ case '/1.html': res.write("1111111"); break; case '/2.html': res.write("22222222"); break; default: res.write("404"); break; } res.end(); }).listen(8888);
node server.js
前臺代碼提交表單
<form action="http://127.0.0.1:8080/www" method="get"> 用戶名:<input type="text" name="user" value=""> 密碼:<input type="password" name="pass" value=""> <input type="submit" value="提交"> </form>
後臺代碼接收數據
接收進來的數據參數能夠有三種方式去解析node
const http = require('http'); const querystring = require('querystring'); http.createServer(function (req,res) { var GET = {}; if(req.url.indexOf("?") != -1){ var arr = req.url.split('?'); var url = arr[0]; GET = querystring.parse(arr[1]); }else { var url = req.url; } console.log(url,GET)// /aaa { user: '孫悟空', pass: '123456' } res.write('aaa'); res.end(); }).listen(8080);
const http = require('http'); const urlLib = require('url'); http.createServer(function (req,res) { var obj = urlLib.parse(req.url,true) var url = obj.pathname; var GET = obj.query; console.log(url,GET)// /aaa { user: '孫悟空', pass: '123456' } res.write('aaa'); res.end(); }).listen(8080);
前臺代碼提交表單
<form action="http://127.0.0.1:8080/www" method="post"> 用戶名:<input type="text" name="user" value=""> 密碼:<input type="password" name="pass" value=""> <input type="submit" value="提交"> </form>
後臺代碼接收數據
在這裏我們使用node提供的 querystring 方法去解析接收過來的數據api
上代碼瀏覽器
const http = require('http'); const querystring = require('querystring'); http.createServer(function (req,res) { var str = '';//接收數據 //data ==> 有一段數據到達(不少次)每次執行一次就是分段一次 var i = 0; req.on('data',function (data) { console.log(`第${i++}次收到數據`);//第0次收到數據(每次執行都會打印一個) str += data; }); //end ==> 數據所有到達的時候 (只發生一次) req.on('end',function () { var POST = querystring.parse(str); console.log(POST);//{ user: '孫悟空', pass: '123123' } }); }).listen(8080);
const http = require('http'); const fs = require('fs'); const querystring = require('querystring'); const urlLib = require('url'); http.createServer(function (req,res) { //GET var obj = urlLib.parse(req.url,true); var url = obj.pathname; const GET = obj.query; //POST var str = ''; req.on("data",function (data) { str += data; }); req.on("end",function () { const POST = querystring.parse(str); /** * url==>要什麼 * GET==>get數據 * POST==>post數據 */ console.log(url,GET,POST); //文件請求 var file_name = './www'+url; fs.readFile(file_name,function (err,data) { if(err){ res.write('404') }else { res.write(data) } }) }) }).listen(8080);