ఈ మెటీరియల్ "ఇంట్రడక్షన్ టు ఎంటర్ప్రైజ్ డెవలప్మెంట్" సిరీస్లో భాగం. మునుపటి కథనాలు:
హాయ్! ఈ రోజు మనం HTTP మరియు HTTPS ప్రోటోకాల్ల గురించి తెలుసుకుందాం. అయితే ముందుగా, ఒక అంశాన్ని స్పష్టం చేద్దాం: మేము OSI మోడల్ యొక్క అప్లికేషన్ స్థాయిలో నెట్వర్క్ ద్వారా డేటాను పంపడానికి ప్రోటోకాల్ల గురించి మాట్లాడుతున్నాము. మేము మునుపటి కథనాలలో ఒకదానిలో OSI మోడల్ గురించి తెలుసుకున్నామని మీరు గుర్తుంచుకోవచ్చు. మీకు అది గుర్తులేకపోతే, ఇదిగోండి .

డేటా కమ్యూనికేషన్ ప్రోటోకాల్ అంటే ఏమిటి?
దీన్నే మేము అంగీకరించిన నియమాల సెట్ అని పిలుస్తాము, ఇది వివిధ సేవల డెవలపర్లను ఇతరులు అర్థం చేసుకోగలిగే ఫార్మాట్లో సమాచారాన్ని పంపడానికి అనుమతిస్తుంది. ఉదాహరణకు, మీరు Facebook మరియు Twitter రెండింటి నుండి సమాచారాన్ని పొందడానికి Google Chromeని ఉపయోగించవచ్చు, ఎందుకంటే డెవలపర్లు దీన్ని ప్రాసెస్ చేయడానికి మీ బ్రౌజర్ని అనుమతించే ప్రామాణిక HTTP ప్రోటోకాల్ని ఉపయోగించి పంపుతారు. సర్వర్ భాగాన్ని అభివృద్ధి చేసే వ్యక్తులకు ఏకరీతి నియమాలు చాలా సౌకర్యవంతంగా ఉంటాయి: మీ కోసం సమాచారాన్ని మార్చగల మరియు తగిన ప్రోటోకాల్ను ఉపయోగించి పంపగల లైబ్రరీలు చాలా ఉన్నాయి. HTTP మొదట్లో HTML పేజీలను పంపడానికి ప్రోటోకాల్గా భావించబడింది. ఇది చాలా కాలం పాటు ఉపయోగించబడిన మార్గం, కానీ ఇప్పుడు ప్రోగ్రామర్లు స్ట్రింగ్స్ మరియు మీడియా ఫైల్లను పంపడానికి తరచుగా దీనిని ఉపయోగిస్తున్నారు. సాధారణంగా, ఈ ప్రోటోకాల్ విశ్వవ్యాప్తంగా ఆమోదించబడింది మరియు బహుముఖమైనది మరియు ఇది ఉపయోగించడానికి చాలా సులభం. మరియు ఇప్పుడు మేము దానిని ఎలా ఉపయోగించాలో పరిశీలిస్తాము.HTTP యొక్క నిర్మాణం
HTTP ప్రోటోకాల్ కేవలం వచనాన్ని మాత్రమే కలిగి ఉంటుందని మనం వెంటనే గమనించాలి. ఈ టెక్స్ట్ యొక్క నిర్మాణం మనకు చాలా ఆసక్తిని కలిగిస్తుంది. ప్రతి సందేశం మూడు భాగాలను కలిగి ఉంటుంది:- ప్రారంభ పంక్తి - ఇది కొన్ని గృహనిర్వాహక డేటాను నిర్వచిస్తుంది.
- శీర్షికలు - ఇవి సందేశ పారామితులను వివరిస్తాయి.
- శరీరం - ఇది సందేశం యొక్క కంటెంట్. శరీరాన్ని తప్పనిసరిగా హెడర్ల నుండి ఖాళీ లైన్ ద్వారా వేరు చేయాలి.
సాధారణ HTTP అభ్యర్థన ఎలా ఉంటుందో ఇక్కడ ఉంది:
GET / HTTP/1.1
Host: codegym.cc
User-Agent: firefox/5.0 (Linux; Debian 5.0.8; en-US; rv:1.8.1.7)
ప్రారంభ పంక్తి సూచిస్తుంది:
- GET - అభ్యర్థన యొక్క పద్ధతి
- / - అభ్యర్థన యొక్క మార్గం
- HTTP/1.1 — ప్రోటోకాల్ వెర్షన్
- హోస్ట్ - అభ్యర్థన ప్రసంగించబడిన హోస్ట్
- వినియోగదారు ఏజెంట్ - అభ్యర్థనను పంపే క్లయింట్
https://cdn.codegym.cc/images/article/155cea79-acfd-4968-9361-ad585e939b82/original.pngsend?name1=value1&name2=value2
codegym.cc ఎక్కడ హోస్ట్, /send అభ్యర్థన యొక్క మార్గం మరియు ? ప్రశ్న పారామితులు అనుసరిస్తాయని సూచించే సెపరేటర్. ముగింపులో, కీ-విలువ జతలు ("కీ=విలువ") జాబితా చేయబడ్డాయి, అవి యాంపర్సండ్తో వేరు చేయబడతాయి. పోస్ట్ - ఈ పద్ధతి సర్వర్లో సమాచారాన్ని ప్రచురిస్తుంది. POST అభ్యర్థన వివిధ రకాల సమాచారాన్ని పంపగలదు: పారామీటర్లు "కీ=విలువ" జతలుగా, JSON, HTML కోడ్ లేదా ఫైల్లు కూడా. మొత్తం సమాచారం సందేశం యొక్క బాడీలో పంపబడుతుంది. ఉదాహరణకి:
POST /user/create/json HTTP/1.1
Accept: application/json
Content-Type: application/json
Content-Length: 28
Host: codegym.cc
{
"Id": 12345,
"User": "John"
}
అభ్యర్థన codegym.cc/user/create/jsonకి పంపబడింది మరియు ప్రోటోకాల్ వెర్షన్ HTTP/1.1. "అంగీకరించు" అనేది క్లయింట్ స్వీకరించాలని ఆశించే ప్రతిస్పందన ఆకృతిని సూచిస్తుంది. "కంటెంట్-టైప్" అనేది అభ్యర్థనలో పంపిన మెసేజ్ బాడీ ఆకృతిని సూచిస్తుంది. "కంటెంట్-లెంగ్త్" అనేది శరీరంలోని అక్షరాల సంఖ్య. HTTP అభ్యర్థన చాలా విభిన్న శీర్షికలను కలిగి ఉండవచ్చు. మరింత సమాచారం కోసం, ప్రోటోకాల్ స్పెసిఫికేషన్ను పరిశీలించండి .
HTTP ప్రతిస్పందనలు
అభ్యర్థనను స్వీకరించిన తర్వాత, సర్వర్ దానిని ప్రాసెస్ చేస్తుంది మరియు క్లయింట్కు ప్రతిస్పందనను పంపుతుంది:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 98
<html>
<head>
<title>An Example Page</title>
</head>
<body>
<p>Hello World</p>
</body>
</html>
ప్రతిస్పందన యొక్క ప్రారంభ పంక్తిలో ప్రోటోకాల్ వెర్షన్ (HTTP/1.1), స్థితి కోడ్ (200) మరియు స్థితి వివరణ (సరే) ఉన్నాయి. దీని హెడర్లలో కంటెంట్ రకం మరియు పొడవు ఉంటాయి. ప్రతిస్పందన అంశం బ్రౌజర్ HTML పేజీగా అందించే HTML కోడ్ని కలిగి ఉంది.
ప్రతిస్పందన స్థితి కోడ్లు
మెసేజ్ బాడీ మరియు హెడర్లకు సంబంధించి ప్రతిదీ స్పష్టంగా ఉంది, అయితే స్టేటస్ కోడ్ల గురించి మనం కొన్ని మాటలు చెప్పాలి. ప్రతిస్పందన స్థితి కోడ్లు ఎల్లప్పుడూ మూడు అంకెలు. కోడ్ యొక్క మొదటి అంకె ప్రతిస్పందన వర్గాన్ని సూచిస్తుంది:- 1xx - సమాచార. అభ్యర్థన స్వీకరించబడింది. సర్వర్ కొనసాగడానికి సిద్ధంగా ఉంది.
- 2xx - విజయవంతమైంది. అభ్యర్థన స్వీకరించబడింది, అర్థం చేసుకుంది మరియు ప్రాసెస్ చేయబడింది.
- 3xx - దారి మళ్లింపు. అభ్యర్థనను ప్రాసెస్ చేయడానికి అదనపు చర్యలు తప్పనిసరిగా చేయాలి.
- 4xx — క్లయింట్ లోపం. అభ్యర్థన లోపాలను కలిగి ఉంది లేదా ప్రోటోకాల్కు అనుగుణంగా లేదు.
- 5xx - సర్వర్ లోపం. అభ్యర్థన సరిగ్గా కంపోజ్ చేయబడింది, కానీ సర్వర్ దానిని ప్రాసెస్ చేయలేకపోయింది.
- 200 సరే — అభ్యర్థన స్వీకరించబడింది మరియు విజయవంతంగా ప్రాసెస్ చేయబడింది.
- 201 సృష్టించబడింది - అభ్యర్థన స్వీకరించబడింది మరియు విజయవంతంగా ప్రాసెస్ చేయబడింది, ఫలితంగా కొత్త వనరు లేదా ఉదాహరణ సృష్టించబడింది.
- 301 శాశ్వతంగా తరలించబడింది - అభ్యర్థించిన వనరు శాశ్వతంగా తరలించబడింది. దానికి తదుపరి అభ్యర్థనలు కొత్త చిరునామాను ఉపయోగించి చేయాలి.
- 307 తాత్కాలిక దారిమార్పు — వనరు తాత్కాలికంగా తరలించబడింది. ప్రస్తుతానికి, ఆటోమేటిక్ ఫార్వార్డింగ్ ఉపయోగించి దీన్ని యాక్సెస్ చేయవచ్చు.
- 403 నిషేధించబడింది - అభ్యర్థన అర్థం చేసుకోబడింది, కానీ అధికారం అవసరం.
- 404 కనుగొనబడలేదు - సర్వర్ ఈ చిరునామాలో వనరును కనుగొనలేదు.
- 501 అమలు చేయబడలేదు - అభ్యర్థనకు ప్రతిస్పందించడానికి అవసరమైన కార్యాచరణకు సర్వర్ మద్దతు ఇవ్వదు.
- 505 HTTP సంస్కరణకు మద్దతు లేదు - HTTP ప్రోటోకాల్ యొక్క పేర్కొన్న సంస్కరణకు సర్వర్ మద్దతు ఇవ్వదు.
GO TO FULL VERSION