// 客戶端 瀏覽器
// 服務(wù)端 監(jiān)聽請求 監(jiān)聽特定的ip和端口號
let http = require("http");
let qs = require("querystring");
// 創(chuàng)建服務(wù)端 需要提供一個監(jiān)聽函數(shù),這個函數(shù)只有當(dāng)請求到來時觸發(fā)
// 端口號一般不要使用3000以下的
// 請求分為三部分 1) 請求行 方法 路徑 協(xié)議
// 2) 請求頭 瀏覽器信息 + 自定義
// 3) 請求體
// request 是可讀流 response是可寫流
// 請求體需要on("data")來接收數(shù)據(jù)
// 響應(yīng)也分為三部分 1) 響應(yīng)行 常見狀態(tài)碼 200 404 403 500 206 部分請求炼鞠,在請求頭中指定字段 "Range:bytes=0-3"
// 2) 響應(yīng)頭 --headers
// 3) 響應(yīng)體
// createClient 爬蟲
http
.createServer((req, res) => {
// request中存放的內(nèi)容
console.log(req.url); // 默認(rèn) /, 端口號后邊的部分,但是沒有hash
console.log(req.method); // 方法名GET/POST... 都是大寫
console.log(req.httpVersion); // http版本號
console.log(req.headers); // {} 所有的屬性名 都是小寫
// 請求的post方法
let arr = [];
req.on("data", function(data) {
console.log(data);
arr.push(data);
});
req.on("end", () => {
// 不管有沒有請求體 都會觸發(fā)end事件
let str = Buffer.concat(arr).toString();
// let obj = {};
// str.replace(/([^=&]*)=([^=&]*)/g, function() {
// obj[arguments[1]] = arguments[2];
// });
// querystring的用法和json.parse JSON.stringify 的用法差不多
let obj = qs.parse(str, "&", "=");
res.statusCode = 200; // 必須是有意義的狀態(tài)碼
res.setHeader("a", "1"); //設(shè)置響應(yīng)頭扒秸,設(shè)置給客戶端的
res.end(JSON.stringify(obj));
});
// response響應(yīng)的內(nèi)容
// res.end("hello"); // 立刻把結(jié)果響應(yīng)回去
})
.listen(3000, "localhost", () => {
console.log("3000 starts");
});
// nodemon 只要文件發(fā)生變化敛苇,就會重新啟動服務(wù)
node-http
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門擂送,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悦荒,“玉大人,你說我怎么就攤上這事嘹吨“嵛叮” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵蟀拷,是天一觀的道長碰纬。 經(jīng)常有香客問我,道長问芬,這世上最難降的妖魔是什么悦析? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮此衅,結(jié)果婚禮上强戴,老公的妹妹穿的比我還像新娘。我一直安慰自己挡鞍,他們只是感情好骑歹,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著墨微,像睡著了一般道媚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上翘县,一...
- 文/蒼蘭香墨 我猛地睜開眼钞馁,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了匿刮?” 一聲冷哼從身側(cè)響起僧凰,我...
- 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎熟丸,沒想到半個月后训措,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡光羞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年绩鸣,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片纱兑。...
- 正文 年R本政府宣布铐炫,位于F島的核電站垒手,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏倒信。R本人自食惡果不足惜科贬,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鳖悠。 院中可真熱鬧榜掌,春花似錦、人聲如沸乘综。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽瘾带。三九已至,卻和暖如春熟菲,著一層夾襖步出監(jiān)牢的瞬間看政,已是汗流浹背。 一陣腳步聲響...
- 正文 我出身青樓呆贿,卻偏偏與公主長得像嚷兔,于是被迫代替她去往敵國和親森渐。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- http://www.tuicool.com/articles/IFbaY3
- http://www.zhimengzhe.com/Javascriptjiaocheng/47058.html
- http協(xié)議 HTTP 1.0 RFC-1945HTTP 1.1 RFC-2616 持久連接HTTPS ...
- 一冒晰、express框架提供三種方法來實(shí)現(xiàn)獲取請求中的參數(shù): req.query 獲取到客戶端提交到服務(wù)器的 查詢參...