Node.js http等模塊 筆記05
阿新 • • 發佈:2018-12-19
arc HERE sla std server list ike pass res
一、http模塊
const http = require('http'); http.createServer((req,res)=>{ //1 設置響應頭 res.writeHead(200,{'content-type': 'text/html; charset=utf-8'}); // 2 設置響應內容 res.write('<h1>there is a way</h1>'); res.end('<h2>always like this!</h2>') }).listen(3000,'127.0.0.1');
?
get 請求:
const http = require('http'); const url = require('url'); const util = require('util'); http.createServer((req,res)=>{ // 1 設置響應頭 res.writeHead(200,{'content-type': 'text/html; charset=utf-8'}); // 2. 利用url模塊去解析客戶端發送過來的URL res.write(req.url); res.write('--------------------------') res.write(util.inspect(url.parse(req.url,true))); res.end(); }).listen(3000,'127.0.0.1'); /* 訪問:http://localhost:3000/getName&a=123&b=456 結果頁面顯示: /getName&a=123&b=456 -------------------------- Url { protocol: null, slashes: null, auth: null, host: null, port: null, hostname: null, hash: null, search: null, query: {}, pathname: '/getName&a=123&b=456', path: '/getName&a=123&b=456', href: '/getName&a=123&b=456' } * */
?
post請求:
/*const http = require('http'); http.createServer((req,res)=>{ //1 設置響應頭 res.writeHead(200,{'content-type': 'text/html; charset=utf-8'}); // 2 設置響應內容 res.write('<h1>there is a way</h1>'); res.end('<h2>always like this!</h2>') }).listen(3000,'127.0.0.1');*/ /* const http = require('http'); const url = require('url'); const util = require('util'); http.createServer((req,res)=>{ // 1 設置響應頭 res.writeHead(200,{'content-type': 'text/html; charset=utf-8'}); // 2. 利用url模塊去解析客戶端發送過來的URL res.write(req.url); res.write('--------------------------') res.write(util.inspect(url.parse(req.url,true))); res.end(); }).listen(3000,'127.0.0.1'); /!* 訪問:http://localhost:3000/getName&a=123&b=456 結果頁面顯示: /getName&a=123&b=456 -------------------------- Url { protocol: null, slashes: null, auth: null, host: null, port: null, hostname: null, hash: null, search: null, query: {}, pathname: '/getName&a=123&b=456', path: '/getName&a=123&b=456', href: '/getName&a=123&b=456' } * *!/*/ const http = require('http'); const url = require('url'); const util = require('util'); const querystring = require('querystring'); http.createServer((req, res)=>{ let postData = ''; // 監聽post 過來數據,然後存入到 postData 裏 req.on('data', (chunk)=>{ postData += chunk; }); req.on('end', ()=>{ console.log(postData); // parse這個方法是將一個字符串反序列化為一個對象。 // 可以將user=gudon&pwd=123456 反序列化為 { user: 'gudon', pwd: '123456' } postData = querystring.parse(postData); //util.inspect()將任意對象轉換為字符串的方法,通常用於調試和錯誤輸出。 res.end(util.inspect(postData)); }); }).listen(3000, '127.0.0.1'); // 訪問:html端post表單提交 username gudon,password為123456 // 服務端打印:user=gudon&pwd=123456 // 瀏覽器:{ user: 'gudon', pwd: '123456' }
未完待續。。。
Node.js http等模塊 筆記05