Node.js HTTP မော်ဂျူး
Built-in HTTP မော်ဂျူး
Node.js တွင် Hyper Text Transfer Protocol (HTTP) တွင် Node.js မှ အချက်အလက်များကို လွှဲပြောင်းရန် ခွင့်ပြုသည့် HTTP ဟုခေါ်သည့် တပ်ဆင်ထားသော module တစ်ခု ရှိသည်။
HTTP module ကိုထည့်သွင်းရန်၊
require()
နည်းလမ်းကိုအသုံးပြုပါ-
var http = require('http');
Node.js ကို ဝဘ်ဆာဗာအဖြစ်
HTTP module သည် server ports များကိုနားထောင်ပြီး client ထံပြန်လည်တုံ့ပြန်သည့် HTTP server ကိုဖန်တီးနိုင်သည်။
createServer()
HTTP ဆာဗာတစ်ခုဖန်တီးရန် နည်းလမ်းကို အသုံးပြု ပါ -
ဥပမာ
var http = require('http');
//create a server object:
http.createServer(function
(req, res) {
res.write('Hello World!'); //write a response to the
client
res.end(); //end the response
}).listen(8080); //the
server object listens on port 8080
http.createServer()
တစ်စုံတစ်ယောက်သည် port 8080 တွင်ကွန်ပျူတာကိုဝင်ရောက်ရန်ကြိုးစားသောအခါ method ထဲသို့ဝင်ရောက်သည့်လုပ်ဆောင်ချက်ကိုလုပ်ဆောင် လိမ့်မည်။
"demo_http.js" ဟုခေါ်သော ဖိုင်တစ်ခုတွင် အထက်ကုဒ်ကို သိမ်းဆည်းပြီး ဖိုင်ကို စတင်ပါ။
ဒီမို_http.js ကို စတင်ပါ
C:\Users\Your Name>node demo_http.js
သင့်ကွန်ပြူတာတွင် အလားတူအဆင့်များကို လိုက်နာပါက၊ ဥပမာအားဖြင့် တူညီသောရလဒ်ကို သင်တွေ့မြင်ရလိမ့်မည်- http://localhost:8080
HTTP Header ကိုထည့်ပါ။
HTTP ဆာဗာမှ တုံ့ပြန်မှုကို HTML အဖြစ် ပြသရမည်ဆိုပါက၊ သင်သည် မှန်ကန်သော အကြောင်းအရာအမျိုးအစားနှင့် HTTP ခေါင်းစီးကို ထည့်သွင်းသင့်သည်-
ဥပမာ
var http = require('http');
http.createServer(function
(req, res) {
res.writeHead(200,
{'Content-Type': 'text/html'});
res.write('Hello
World!');
res.end();
}).listen(8080);
နည်းလမ်း ၏ပထမအငြင်းအခုံမှာ res.writeHead()
အခြေအနေကုဒ်ဖြစ်သည်၊ 200 သည် အားလုံးကောင်းပြီဟု ဆိုလိုသည်၊ ဒုတိယအငြင်းအခုံမှာ တုံ့ပြန်မှုခေါင်းစီးများပါရှိသော အရာဝတ္ထုတစ်ခုဖြစ်သည်။
Query String ကိုဖတ်ပါ။
အရာဝတ္တု (http.IncomingMessage အရာဝတ္ထု) အဖြစ် client ထံမှ တောင်းဆိုချက်ကို ကိုယ်စားပြု http.createServer()
သည့် အကြောင်းပြချက်တစ်ခု ထဲသို့ ဖြတ်သွားသော လုပ်ဆောင်ချက် ပါရှိသည်။req
ဤအရာဝတ္တုတွင် ဒိုမိန်းအမည်နောက်တွင် ပါလာသည့် url ၏အစိတ်အပိုင်းကို ကိုင်ဆောင်ထားသည့် "url" ဟုခေါ်သော ပိုင်ဆိုင်မှုတစ်ခု ပါရှိသည်-
demo_http_url.js
var http = require('http');
http.createServer(function
(req, res) {
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(req.url);
res.end();
}).listen(8080);
အထက်ကုဒ်ကို "demo_http_url.js" ဟုခေါ်သော ဖိုင်တစ်ခုတွင် သိမ်းဆည်းပြီး ဖိုင်ကို စတင်ပါ။
သရုပ်ပြ_http_url.js ကို စတင်ပါ-
C:\Users\Your Name>node demo_http_url.js
သင့်ကွန်ပြူတာတွင် တူညီသောအဆင့်များကို လိုက်နာပါက၊ ဤလိပ်စာနှစ်ခုကိုဖွင့်သောအခါ မတူညီသောရလဒ်နှစ်ခုကို သင်တွေ့ရပါမည်။
ဤရလဒ်ကို ထုတ်ပေးပါမည်-
/summer
ဤရလဒ်ကို ထုတ်ပေးပါမည်-
/winter
Query String ကို ခွဲလိုက်ပါ။
URL module ကဲ့သို့ ဖတ်ရှုနိုင်သော အစိတ်အပိုင်းများအဖြစ် query string ကို အလွယ်တကူ ခွဲရန် built-in module များ ရှိပါသည်။
ဥပမာ
မေးခွန်းစာကြောင်းကို ဖတ်ရှုနိုင်သော အပိုင်းများအဖြစ် ခွဲပါ-
var http = require('http');
var url = require('url');
http.createServer(function (req, res) {
res.writeHead(200,
{'Content-Type': 'text/html'});
var q = url.parse(req.url,
true).query;
var txt = q.year + " " +
q.month;
res.end(txt);
}).listen(8080);
"demo_querystring.js" ဟုခေါ်သော ဖိုင်တစ်ခုတွင် အထက်ကုဒ်ကို သိမ်းဆည်းပြီး ဖိုင်ကို စတင်ပါ။
demo_querystring.js ကို စတင်ပါ
C:\Users\Your Name>node demo_querystring.js
လိပ်စာ-
ဤရလဒ်ကို ထုတ်ပေးပါမည်-
2017 July
Node.js URL Module အခန်း ရှိ URL module အကြောင်း ပိုမိုဖတ်ရှုပါ ။