HTTP என்றால் என்ன?
ஹைப்பர்டெக்ஸ்ட் டிரான்ஸ்பர் புரோட்டோகால் (HTTP) வாடிக்கையாளர்கள் மற்றும் சேவையகங்களுக்கு இடையேயான தகவல்தொடர்புகளை இயக்குவதற்காக வடிவமைக்கப்பட்டுள்ளது.
HTTP ஒரு வாடிக்கையாளர் மற்றும் சேவையகத்திற்கு இடையே ஒரு கோரிக்கை-பதில் நெறிமுறையாக செயல்படுகிறது.
எடுத்துக்காட்டு: ஒரு வாடிக்கையாளர் (உலாவி) சேவையகத்திற்கு ஒரு HTTP கோரிக்கையை அனுப்புகிறார்; பின்னர் சேவையகம் வாடிக்கையாளருக்கு ஒரு பதிலைத் திருப்பித் தருகிறது. பதில் கோரிக்கை பற்றிய நிலை தகவல்களைக் கொண்டுள்ளது மற்றும் கோரப்பட்ட உள்ளடக்கத்தையும் கொண்டிருக்கலாம்.
HTTP முறைகள்
GET
POST
PUT
HEAD
DELETE
PATCH
OPTIONS
CONNECT
TRACE
இரண்டு மிகவும் பொதுவான HTTP முறைகள்: GET மற்றும் POST.
GET முறை
GET ஒரு குறிப்பிட்ட வளத்திலிருந்து தரவைக் கோரப் பயன்படுகிறது.
வினவல் சரம் (பெயர்/மதிப்பு இணைகள்) ஒரு GET கோரிக்கையின் URL இல் அனுப்பப்படுகிறது என்பதைக் கவனிக்கவும்:
/test/demo_form.php?name1=value1&name2=value2
GET கோரிக்கைகள் பற்றிய சில குறிப்புகள்:
- GET கோரிக்கைகள் தற்காலிக சேமிப்பகத்தில் சேமிக்கப்படலாம்
- GET கோரிக்கைகள் உலாவி வரலாற்றில் இருக்கும்
- GET கோரிக்கைகள் புத்தகக்குறியிடப்படலாம்
- முக்கியமான தரவைக் கையாளும்போது GET கோரிக்கைகள் ஒருபோதும் பயன்படுத்தப்படக்கூடாது
- GET கோரிக்கைகளுக்கு நீளம் கட்டுப்பாடுகள் உள்ளன
- GET கோரிக்கைகள் தரவைக் கோருவதற்கு மட்டுமே பயன்படுத்தப்படுகின்றன (மாற்றுவதில்லை)
POST முறை
POST ஒரு வளத்தை உருவாக்க/புதுப்பிக்க சேவையகத்திற்கு தரவை அனுப்பப் பயன்படுகிறது.
POST உடன் சேவையகத்திற்கு அனுப்பப்படும் தரவு HTTP கோரிக்கையின் கோரிக்கை உடலில் சேமிக்கப்படுகிறது:
POST /test/demo_form.php HTTP/1.1
Host: jassifteam.com
name1=value1&name2=value2
POST கோரிக்கைகள் பற்றிய சில குறிப்புகள்:
- POST கோரிக்கைகள் ஒருபோதும் தற்காலிக சேமிப்பகத்தில் சேமிக்கப்படுவதில்லை
- POST கோரிக்கைகள் உலாவி வரலாற்றில் இருக்காது
- POST கோரிக்கைகள் புத்தகக்குறியிடப்பட முடியாது
- POST கோரிக்கைகளுக்கு தரவு நீளத்தில் எந்த கட்டுப்பாடுகளும் இல்லை
GET மற்றும் POST ஐ ஒப்பிடுக
பின்வரும் அட்டவணை இரண்டு HTTP முறைகளை ஒப்பிடுகிறது: GET மற்றும் POST.
| GET | POST | |
|---|---|---|
| BACK பொத்தான்/மீள் ஏற்றம் | தீங்கற்றது | தரவு மீண்டும் சமர்ப்பிக்கப்படும் (தரவு மீண்டும் சமர்ப்பிக்கப்படப் போவதாக உலாவி பயனரை எச்சரிக்க வேண்டும்) |
| புத்தகக்குறியிடப்பட்டது | புத்தகக்குறியிடப்படலாம் | புத்தகக்குறியிட முடியாது |
| தற்காலிக சேமிப்பகம் | தற்காலிக சேமிப்பகத்தில் சேமிக்கப்படலாம் | தற்காலிக சேமிப்பகத்தில் சேமிக்கப்படுவதில்லை |
| குறியாக்க வகை | application/x-www-form-urlencoded | application/x-www-form-urlencoded அல்லது multipart/form-data. பைனரி தரவுகளுக்கு multipart குறியாக்கத்தைப் பயன்படுத்தவும் |
| வரலாறு | அளவுருக்கள் உலாவி வரலாற்றில் இருக்கும் | அளவுருக்கள் உலாவி வரலாற்றில் சேமிக்கப்படுவதில்லை |
| தரவு நீளத்தில் கட்டுப்பாடுகள் | ஆம், தரவை அனுப்பும்போது, GET முறை தரவை URL க்கு சேர்க்கிறது; மற்றும் ஒரு URL இன் நீளம் வரையறுக்கப்பட்டுள்ளது (அதிகபட்ச URL நீளம் 2048 எழுத்துகள்) | கட்டுப்பாடுகள் இல்லை |
| தரவு வகையில் கட்டுப்பாடுகள் | ASCII எழுத்துகள் மட்டுமே அனுமதிக்கப்படுகின்றன | கட்டுப்பாடுகள் இல்லை. பைனரி தரவும் அனுமதிக்கப்படுகிறது |
| பாதுகாப்பு | GET POST உடன் ஒப்பிடும்போது குறைவான பாதுகாப்பானது, ஏனெனில் அனுப்பப்பட்ட தரவு URL இன் ஒரு பகுதியாகும் கடவுச்சொற்கள் அல்லது பிற முக்கியமான தகவல்களை அனுப்பும்போது GET ஐ ஒருபோதும் பயன்படுத்த வேண்டாம்! |
POST GET ஐ விட சிறிது பாதுகாப்பானது, ஏனெனில் அளவுருக்கள் உலாவி வரலாற்றில் அல்லது வலை சேவையக பதிவுகளில் சேமிக்கப்படுவதில்லை |
| தெரியும் தன்மை | தரவு URL இல் அனைவருக்கும் தெரியும் | தரவு URL இல் காட்டப்படுவதில்லை |
PUT முறை
PUT ஒரு வளத்தை உருவாக்க/புதுப்பிக்க சேவையகத்திற்கு தரவை அனுப்பப் பயன்படுகிறது.
POST மற்றும் PUT இடையே உள்ள வேறுபாடு என்னவென்றால், PUT கோரிக்கைகள் மாற்றமற்றவை. அதாவது, ஒரே PUT கோரிக்கையை பல முறை அழைப்பது எப்போதும் ஒரே முடிவை உருவாக்கும். இதற்கு மாறாக, ஒரு POST கோரிக்கையை மீண்டும் மீண்டும் அழைப்பது ஒரே வளத்தை பல முறை உருவாக்கும் பக்க விளைவுகளைக் கொண்டிருக்கும்.
HEAD முறை
HEAD GET க்கு கிட்டத்தட்ட ஒரே மாதிரியானது, ஆனால் பதில் உடல் இல்லாமல்.
வேறு வார்த்தைகளில் கூறுவதானால், GET /users பயனர்களின் பட்டியலைத் திருப்பித் தந்தால், HEAD /users அதே கோரிக்கையைச் செய்யும், ஆனால் பயனர்களின் பட்டியலைத் திருப்பித் தராது.
உண்மையில் GET கோரிக்கையைச் செய்வதற்கு முன், GET கோரிக்கை என்ன திரும்பும் என்பதைச் சரிபார்க்க HEAD கோரிக்கை பயனுள்ளதாக இருக்கும் - HEAD கோரிக்கை கோப்பின் அளவைச் சரிபார்க்க Content-Length தலைப்பைப் படிக்க முடியும், உண்மையில் கோப்பைப் பதிவிறக்காமல்.
DELETE முறை
DELETE முறை குறிப்பிட்ட வளத்தை நீக்குகிறது.
PATCH முறை
PATCH முறை ஒரு வளத்திற்கு பகுதி மாற்றங்களைப் பயன்படுத்தப் பயன்படுகிறது.
OPTIONS முறை
OPTIONS முறை இலக்கு வளத்திற்கான தகவல்தொடர்பு விருப்பங்களை விவரிக்கிறது.
CONNECT முறை
CONNECT முறை கோரப்பட்ட வளத்துடன் இரு வழி தகவல்தொடர்புகளை (ஒரு சுரங்கப்பாதை) தொடங்கப் பயன்படுகிறது.
TRACE முறை
TRACE முறை இலக்கு வளத்திற்கான பாதையை சோதிக்கும் செய்தி லூப்-பேக் சோதனையைச் செய்யப் பயன்படுகிறது (பிழைத்திருத்த நோக்கங்களுக்கு பயனுள்ளதாக இருக்கும்).