Sobes.tech
Intern

რა ტიპის HTTP მოთხოვნები არსებობს?

sobes.tech AI

პასუხი AI-სგან

მთავარი HTTP-საკითხვის ტიპები: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.

საუკეთესო გავრცელებული ტიპების აღწერა:

  • GET: სთხოვს მითითებულ რესურსის წარმოდგენას. ამ მეთოდით მოთხოვნები უნდა მიიღოს მხოლოდ მონაცემები.
  • POST: გზავნის მონაცემებს დამუშავებისთვის მითითებულ რესურსზე. ხშირად შედეგია მდგომარეობის ცვლილება ან გვერდითი ეფექტები სერვერზე.
  • PUT: ცვლის ყველა მიმდინარე წარმოდგენას მიზნობრივ რესურსზე მონაცემებით, რომელიც არის მოთხოვნის სხეულში.
  • DELETE: წაშლის მითითებულ რესურსს.
  • PATCH: ახორციელებს ნაწილობრივ ცვლილებებს რესურსზე.
  • HEAD: ითხოვს სათაურებს როგორც GET, მაგრამ პასუხის სხეული არ აქვს. გამოიყენება მეტადონალებისთვის.
  • OPTIONS: აღწერს კავშირის პარამეტრებს მიზნობრივ რესურსზე.
  • CONNECT: გარდაქმნის მოთხოვნილ კავშირს ტრანსპარენტ TCP/IP პროქსის სერვერზე.
  • TRACE: ახორციელებს უკუკავშირის ტესტს მიზნობრივ რესურსზე.

შეთავაზებები GET და POST შორის:

ნიშნული GET POST
მიზანი მონაცემების მიღება მონაცემების გადაცემა დამუშავებისთვის
მონაცემების გადაცემა URL პარამეტრებით (Query String) მოთხოვნის სხეულით
უსაფრთხოება ინდემპოტენტური (გაიმეორებადი მოთხოვნები არ ცვლის მდგომარეობას) არინდემპოტენტური
მონაცემების ხილვადობა URL-ში ჩანს, ინახება ბრაუზერის ისტორიაში, სერვერის ლოგებში URL-ში არ ჩანს, არ ინახება ბრაუზერის ისტორიაში
მონაცემების ზომა URL-ის სიგრძით შეზღუდული შეზღუდული არ არის (ან ძალიან დიდი)
კეშირება შეიძლება კეშირებადი არ კეშირებს ძირითად საშუალებებით
შენიშვნა შეიძლება დაამატოთ გვერდი GET პარამეტრებით ბმულებში შეუძლებელია (საშუალო მეთოდებით ფორმის გაგზავნა)

PHP-ში GET გამოყენების მაგალითი:

<?php
// 'id' პარამეტრის მიღება URL-დან
$userId = $_GET['id'];
echo "User ID: " . htmlspecialchars($userId);
?>

PHP-ში POST გამოყენების მაგალითი (ფორმის მონაცემების დამუშავება):

<?php
// შემოწმება, თუ მოთხოვნა POST მეთოდით არის
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // მონაცემების მიღება მოთხოვნის სხეულიდან
    $username = $_POST['username'];
    $password = $_POST['password'];
    // მონაცემების შემდგომი დამუშავება (მაგ. ბაზაში შენახვა)
    echo "Username: " . htmlspecialchars($username) . "<br>";
    echo "Password received.";
}
?>