HTTP and What We Need to Know about It

·

2 min read

HTTP and What We Need to Know about It

Browserမှာ web addressတစ်ခုကို typeပြီးဝင်လိုက်ရင် ရှေ့ကနေ http:// (or) https:// တစ်ခုခု အလိုလိုထည့်ပေးသွားတာ သတိထားမိမှာပါ။ ဒါဘာလဲ၊ web pageတစ်ခုမှာ သူက ဘာအလုပ်လုပ်လဲ ဆိုတာ ကြည့်ရအောင်။

HTTP = Hypertext Transfer Protocol ( Hypertext နဲ့ ကျနော်တို့သုံးနေကျ သာမာန်textတွေနဲ့ ဘာကွာလဲဆိုရင် hypertextက အခြားresourceတစ်ခုဆီ linkချိတ်ပေးနိုင်ပါတယ်။ ဥပမာ - HTMLပေါ့။ Protocolကို a set of rules (or) လုပ်ငန်းစဥ်လို့မှတ်ယူနိုင်ပါတယ်။)

HTTP ဆိုတာ စာတွေ image, videoစတဲ့ media fileတွေ web pageတွေကို လွှဲပြောင်းပို့ပေးဖို့ သုံးတဲ့ protocolတစ်ခုပါ။ client - server ဆက်သွယ်မှုတွေက HTTPကိုသုံးပြီးလုပ်ပါတယ်။

ကျနော်တို့ Internetချိတ်ပြီး လုပ်လိုက်တဲ့အရာမှန်သမျှက request - response ဆိုတဲ့ cycle🔄လေးတွေပါပဲ။ Facebook appကိုဖွင့်လိုက်တာ(request) အဲ့ဒီနောက် postတွေ ပေါ်လာတာ(response) Likeနှိပ်လိုက်တာ(request) ကိုယ်Likeနှိပ်လိုက်တာကို Serverမှာ သွားသိမ်းတာ(response)။ Clientမှာ လုပ်တဲ့ requestကို Serverက responseပြန်ပေးပါတယ်။

“HTTPS”

သူကတော့ HTTPရဲ့ “Secured”🛡️ versionပါ။ HTTPSက Browser နဲ့ Website (client နဲ့ server) ကြားက ဆက်သွယ်ပေးပို့မှုတွေကို TLS(Transport Layer Security)ဆိုတဲ့နည်းပညာနဲ့ encryptလုပ်ပေးပြီးတော့ လုံခြုံရေးတိုးမြှင့်ပေးပါတယ်။ HTTPက ရိုးရိုးplain textအဖြစ်ပဲ ပို့ပေးတယ်။ HTTPSကတော့ encryptedလုပ်ပြီးမှ ပို့ပေးပါတယ်။

( SSL (Secure Socket Layer)ဆိုတဲ့ စကားလုံးလေးကို ကြားဖူးပါလိမ့်မယ်။ TLS က SSLရဲ့ နောက်မှာထပ်ပေါ်လာတဲ့ ပိုကောင်းတဲ့versionပါ။ web serverနဲ့ browserကြားကဆက်သွယ်မှုတွေကို encryptလုပ်ပေးတဲ့ Standard Security နည်းပညာတစ်ခုပါပဲ။ TSL handshakeတို့ SSL certificateတို့ဆိုတာလည်း ကြုံဖူးပါလိမ့်မယ်။ requestတွေ responseတွေကို ဖွင့်ဖတ်ဖို့ Client နဲ့ Serverမှာ keyတစ်ခုစီရှိနေပြီး keyချင်းကိုက်ညီမှပဲ dataလွှဲပြောင်းဖို့ 🤝ခွင့်ပြုတဲ့သဘောပါ။ )

Websiteတစ်ခုမှာ ကိုယ့်ရဲ့Bank Card Informationတွေ Passwordတွေ စတဲ့အရေးကြီးအချက်အလက်တွေ ထည့်ပေးရမယ်ဆိုရင် https ကိုသုံးထားလားဆိုတာ အရင်စစ်ကြည့်သင့်ပါတယ်။ မဟုတ်ရင် ကြားကနေဖြတ်ပြီး အချက်အလက်ခိုးယူတာတွေလုပ်ဖို့ လွယ်ကူသွားတတ်ပါတယ်။

“Request Methods”

  • GET Serverတစ်ခုကနေ URI (အလွယ်မှတ်ရင် link)တစ်ခုကိုသုံးပြီး dataတွေ ရယူတဲ့ဖတ်တဲ့အခါမှာ GET methodသုံးပါတယ်။ dataကို ဘာမှပြုပြင်တာမျိုးမလုပ်ပါဘူး။

  • POST Serverဆီကို dataပို့တဲ့အခါမှာ သုံးပါတယ်။ Example: ပုံတင်တာ ကိုယ်ရေးအချက်အလက်တွေ formမှာထည့်တာ။

  • PUT Serverက dataတစ်ခုကို ပြုပြင်တဲ့ အစားထိုးတဲ့အခါမှာသုံးပါတယ်။

  • DELETE URIတစ်ခုမှာရှိတဲ့ သက်ဆိုင်ရာ dataတစ်ခုကို ဖျက်ပစ်တဲ့ နေရာမှာသုံးပါတယ်။

    HEAD, OPTIONS စတဲ့ methodတွေရှိသေးပေမယ့် ဒီအသုံးများတာတွေ သိထားရင် အဆင်ပြေပါပြီ။

“Response Status Codes”

HTTP requestတစ်ခုပြီးမြောက်လား အောင်မြင်လားဆိုတာကို သက်ဆိုင်ရာstatus codeတွေနဲ့ ပြပါတယ်။

  • ℹ️ Informational responses ( 100 – 199 )
  • ✅ Successful responses ( 200 – 299 )
  • ↪️ Redirects ( 300 – 399 )
  • ✖️ Client errors ( 400 – 499 )
    400 — Bad Request
    404 — Not Found
  • 🚫 Server errors ( 500 – 599 )
    500 — Internal Server Error
    503 — Service Unavailable

“HTTP Versions”

Version 0.9 ကနေ စခဲ့တဲ့ HTTPဟာ 1.0, 1.1 တို့ကို ဖြတ်ကျော်ပြီး လက်ရှိမှာတော့ HTTP/2ကို အသုံးပြုနေကြပါတယ်။ နောက်ထပ်လည်း ထပ်ပြီး improvementတွေ ဆက်ရှိနေတုန်းပါပဲ။

ဒါဆို HTTPရဲ့ အခြေခံကိုနားလည်လောက်ပါပြီ။ နောက်တော့ websiteတစ်ခု ဝင်ကြည့်တဲ့အခါ http://, https://စတာလေးတွေမြင်ရရင် သူတို့လုပ်ဆောင်ချက်တွေ ကွဲပြားမှုတွေသိနိုင်ပါပြီ။ Websiteတစ်ခု errorပြတဲ့အခါမှာလည်း status codeလေးတွေနဲ့ အတော်အသင့်ရင်းနှီးသွားပါပြီ။