НТТР сұраныс
Сұраныс-серверге клиентепн жіберілетін хабарлама.
Бұл хабарламаның алғашқы қатары сұранылып жатқан ресурсқа, ресурс идентификаторы және протоколдың қолданылып отырған жобасына қолданылуға тиіс әдістен тұруы керек. HTTP/0.9 протоколымен сәйкестік үшін әйкестік үшін НТТР сұраныстың екі форматы бар:
Сұраныс = Қарапайым-Сұраныс | Толық-Сұраныс.
Қарапайым-Сұраныс=“GET” SP Сұранылынып жатқан-URI CRLF.
Толық-Сұраныс = Қатар-Статус.
*(Жалпы-Тақырып | Сраныс-Тақырыбы | Құрамының-Тақырыбы) CRLF
[ Сұраныс-құрамы ].
Статус Қатары
Егер де HTTP/1.0 сервері Қарапайым-Сұраныс алатын болса, онда ол Толық-Жауапты өңдей алатын Қарапайым-Жауап HTTP/0.9. HTTP/1.0 клиент қайтарады.
Әдіс
«Әдіс» өрісінде URI-Сұранысқа идентификацияланатын ресурсқа қолданылатын әдіс көрсетіледі. Әдіс атаулары регистрге тәуелді. Бар әдістердің тізімі кеңейтілуі мүмкін.
Әдіс = “GET” | “HEAD” | “PUT” | “POST” | “DELETE” | “LINK” | “UNLINK” | қосымша-әдіс.
Жеке ресурстарға қол жетімді әдістер тізімі, « «Балл» құрамының -Тақырыбы » өрісвінде көрсетілуі мүмкін. Клиент үнемі жауап статусы арқылы хабар алып отырады, көрсетілген ресурсқа берілген әдісті қолдануға мүмкіндік беріледі ма екен, себебі түрлі әдістерді қолдануға мүмкіндік беру динамикалық түрде өзгеріп отырады.
GET
GET әдісі URI-сұраныспен идентификацияланған кез-келген ақпаратты алу үшін қызмет етеді. Егер де URI-сұраныс деректерді беретін пороцеске сілтенетін болса, онда жауап ретінде процестің коды емес, берілген процеспен генерацияланған деректер келіп түседі.
GET әдісі егер хабарлама өзіне “If-Modified-Since” өріс тақырыбын қосатын болса, онда «шартты GET » те өзгереді. Шартты GET ке жауап ретінде аяқталып жатқан ресурс денесі тек ғана “If-Modified-Since” тақырыбында көрсетілген уақыттан кейін өзгерген болса ғана беріледі.
HEAD
HEAD әдісі GET әдісіне ұқсас, бірақ бұл әдісте жауа ретінде Жауап-Денесін қайтармайды. HEAD сұранысының НТТР жауап тақырыбындағы бар метаақпарат, GET сұранысының НТТР жауап тақырыбының ақпаратына ұқсас болуы тиіс. Берілген әдіс ресурс жайындағы метаақпаратты ресурстың өзін желі арқылы жібермей-ақ алу мүмкіндігінде қолданылады. «Шартты HEAD» әдісі шартты GET ке ұқсас.
POST
POST әдісі сервер сұраныс үшін қолданылады. POST әдісімен орындалынатан шынайы функция сервермен анықталып, негізінен URI-сұранысқа тәуелді болады. Қосылатын ақпарат көрсетілген URI-ға субординат секілді, файл каталогқа субординат сияқты қарастырылады.
Клиент URI-ді сұраныс тақырыбына «URI» қоу арқылы жаңа ресурстың идентификациясына ұсынуы мүмкін. Алайда, сервер URI-ді тек ғана кеңес ретінде қабылдауы тиіс, және сұраныс денесін басқа URI-мен немесе онсыз сақтайды.
POST сұранысын өңдегеннен кейін жаңа ресурс жасалынған болса, онда жауап “201 Created” тең статус кодына ие болып URI-дің жаңа ресурсынан тұруы керек.
PUT
PUT әдісі серверден Сұраныс-Денесін URI астында, URI-Сұранысқа тең етіп сақтауды сұрайды. Егер де URI-Сұраныс бар ресурсқа сілтенетін болса, онда Сұраныс-Денесі берілген ресурстың модификацияланған болжамы ретінде қабылданады. Егер де URI-Сұраныс сілтеніп жатқан ресурс жоқ болса, сервер берілген URI мен ресурс жасайды.
POST және PUT әдістерінің негізгі айырмашылығы, URI-Сұраныс өрістерінің түрлі мәндерінде. POST әдісі үшін берілген URI қандай да бір предикат ретінда сұраныс денесінде болатын ақпаратты басқаратын ресурсты көрсетеді. Ал PUT сұранысы үшін URI Сұраныс-Құрамында болатын ақпаратты идентификациялайды. Қолданылатын PUT сұраныс өзінің қандай URI-ді қолданатынын нақты біледі, және сұранысты алушы бұл сұранысты басқа бір ресурсқа пайдалабауы тиіс.
DELETE
DELETE әдісі, URI-сұранысының көмегімен иденфицирленген ресурстарды өшіру үшін қолданылады . Берілген әдістегі жұмыстың нәтижесі серверде адамдардың арласу көмегімен өзгеруі мүмкін. (немесе қандай да бір басқа әдіспен).
LINK
LINK әдісі устанавливает взаимосвязи между существующим ресурсом, указанным в URI-Запроса, и другими существующими ресурсами. Отличие метода LINK от остальных методов, допускающих установление ссылок между документами, заключается в том, что метод LINK не позволяет передавать в запросе Тело-Запроса, и в том, что в результате работы данного метода не создаются новые ресурсы.
UNLINK
Метод UNLINK удаляет одну или более ссылочных взаимосвязей для ресурса, указанного в URI- Запроса. Эти взаимосвязи могут быть установлены с помощью метода LINK или какого-нибудь другого метода, поддерживающего заголовок “Link”. Удаление ссылки на ресурс не означает, что ресурс прекращает существование или становится недоступным для будущих ссылок.
HTTP жауабы
Жауаптың құрылысы:
Алғаннан кейін және сұраныстарды талдағаннан кейін сервер келесі формаға сәйкес жауап қайтарады:
Жауап = Қарапайым-жауап | Толық -жауап
Қарапайым-жауап= [ Жауаптың мазмұны]
Толық-жауап = Статус жолы
*( Ортақ тақырып| Жауаптардың тақырыбы | Мазмұндардың тақырыбы) CRLF.
[ Жауаптардың мазмұны ].
Қарапайым жауап тек HTTP/0.9 жауабына ғана жіберілуі керек. Қарапайым сұраныс кезде немесе сервер тек құпиялы HTTP/0.9 протоколынан тұрса ғана. Егер клиент HTTP/1.0 толық жауапқа жіберсе және статус жолынан басталмайтын жауап алатын болса, онда ол сервердің жауабы қарапайым жауапты көрсететінің және соған сәйкес жасау керек екенін де өзіңше білуі қажет.Қарапайым жауап тек сұраныстағы ақпараттардан құралатына (тақырыпсыз) және берілгендердің потогы сервер байланыс сеансын жапқан кезде ғана тоқтатылатына көңіл аудара кетейік
Статус жолы.
Толық сұраныстың бірінші жолы статус жолы деп аталады. Олар статустың цифрлық коды және онымен бірге мәтіндік сөйлемдердің болуы сияқты протоколдардың түрлерінен құралады. Статус жолдарының барлық элементтері себептермен бөлінген. CR және LF символдары шешілмеген. HTTP-версиясында статус жолы SP , Түсіндіру жолында код статусы SP.
Статус жолы сияқты әрдайым “HTTP/” 1*САН “. 1*САН протоколының версиясынан басталады.(мысалы, HTTP/1.0), Бұл түсінік жауаптың қарапайым жауап немесе толық жауап екенін анықтау үшін арналған ең негізгі қарастыру болып табылады. Бірақ ,сонда да қарапайым жауаптың форматы мұндай жолдарың пайда болуына мүмкіндік бермейді (жауаптардың хабарламасын дұрыс талдамау және оны толық жауап деп санап қалу сияқты),мұндай жағдай пайда болған жағдайда нөлге жақын деген сөз.
Достарыңызбен бөлісу: |