Διαφορά μεταξύ της μεθόδου GET και της μεθόδου POST σε HTML

Συγγραφέας: Laura McKinney
Ημερομηνία Δημιουργίας: 1 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 10 Ενδέχεται 2024
Anonim
Публичное собеседование: Junior Java Developer. Пример, как происходит защита проекта после курсов.
Βίντεο: Публичное собеседование: Junior Java Developer. Пример, как происходит защита проекта после курсов.

Περιεχόμενο


Το GET και το POST είναι δύο αποτελεσματικές τεχνικές που επιτρέπουν στα δεδομένα στον διακομιστή και στο πρόγραμμα περιήγησης απαραίτητα να επικοινωνούν με τον διακομιστή. Οι δύο μέθοδοι είναι ξεχωριστές όπου η μέθοδος GET προσθέτει τα κωδικοποιημένα δεδομένα στο URI ενώ στην περίπτωση της μεθόδου POST τα δεδομένα προσαρτώνται στο σώμα παρά στο URI. Επιπλέον, η μέθοδος GET χρησιμοποιείται για την ανάκτηση των δεδομένων. Αντίστροφα, η μέθοδος POST χρησιμοποιείται για την αποθήκευση ή την ενημέρωση των δεδομένων.

ο μορφή ετικέτα χρησιμοποιείται για την έκφραση του περιεχομένου της φόρμας? αυτό είναι γνωστό και ως μορφή ελέγχου. Αυτά τα έντυπα γεμίζονται με δεδομένα που στη συνέχεια αποστέλλονται στο απομακρυσμένο μηχάνημα για περαιτέρω επεξεργασία. Η λειτουργία του εντύπου περιλαμβάνει δύο κρίσιμα σημεία: πρώην είναι η προδιαγραφή διευθύνσεων του προγράμματος που χειρίζεται τα περιεχόμενα της φόρμας με τη βοήθεια του ΔΡΑΣΗ. Αργότερα είναι η προδιαγραφή μεθόδου μέσα στην οποία ρέουν τα δεδομένα της φόρμας με τη βοήθεια του ΜΕΘΟΔΟΣ Χαρακτηριστικό.


Το χαρακτηριστικό ΔΡΑΣΗ περιγράφει τον τρόπο χειρισμού της φόρμας HTML. Το χαρακτηριστικό METHOD διαχειρίζεται τη διαδικασία υποβολής των δεδομένων. Η μέθοδος GET και POST υπάγεται στο χαρακτηριστικό METHOD.

    1. Συγκριτικό διάγραμμα
    2. Ορισμός
    3. Βασικές διαφορές
    4. Παράδειγμα
    5. συμπέρασμα

Συγκριτικό διάγραμμα

Βάση σύγκρισηςΠΑΙΡΝΩΘΕΣΗ
Οι παράμετροι τοποθετούνται μέσαURIΣώμα
ΣκοπόςΑνάκτηση εγγράφωνΕνημέρωση δεδομένων
Αποτελέσματα ερωτήματοςΙκανός να είναι σελιδοδείκτες.Δεν είναι δυνατή η δημιουργία σελιδοδείκτη.
ΑσφάλειαΕυάλωτο, όπως είναι παρώνΑσφαλέστερη από τη μέθοδο GET
Περιορισμοί τύπων δεδομένων μορφήςΕπιτρέπονται μόνο χαρακτήρες ASCII.
Δεν επιτρέπονται περιορισμοί, ακόμη και δυαδικά δεδομένα.
Μήκος δεδομένων φόρμαςΠρέπει να διατηρείται όσο το δυνατόν λιγότερο.Θα μπορούσε να βρίσκεται σε οποιοδήποτε εύρος.
ΟρατότηταΜπορεί να το δει κανείς.Δεν εμφανίζει μεταβλητές στη διεύθυνση URL.
Μεταβλητό μέγεθοςΈως 2000 χαρακτήρες.Έως 8 Mb
CachingΤα δεδομένα μεθόδου μπορούν να αποθηκευτούν προσωρινά.Δεν αποθηκεύει προσωρινά τα δεδομένα.


Ορισμός της μεθόδου GET

GET μέθοδο χρησιμοποιείται για την αίτηση της διεύθυνσης URL από έναν διακομιστή ιστού για τη λήψη των εγγράφων HTML. Είναι μια συμβατική μέθοδος για τα προγράμματα περιήγησης να παραδίδουν τις πληροφορίες που υπολογίζονται ως μέρος του πρωτοκόλλου HTTP. Η μέθοδος GET αντιπροσωπεύεται με τη μορφή της διεύθυνσης URL, ώστε να μπορεί να επισημανθεί με σελιδοδείκτη. Το GET χρησιμοποιείται ευρέως στις μηχανές αναζήτησης. Μετά την υποβολή ενός ερωτήματος από το χρήστη στη μηχανή αναζήτησης, ο μηχανισμός εκτελεί το ερώτημα και δίνει τη σελίδα που προκύπτει. Τα αποτελέσματα του ερωτήματος μπορούν να οριστούν ως σύνδεσμος (σελιδοδείκτης).

Η μέθοδος GET επιτρέπει την δημιουργία άγκυρας, η οποία βοηθά στην πρόσβαση στο πρόγραμμα CGI με το ερώτημα που αποφεύγει τη χρήση της φόρμας. Το ερώτημα είναι κατασκευασμένο σε έναν σύνδεσμο, έτσι όταν το link επισκέπτεται το πρόγραμμα CGI θα ανακτήσει τις κατάλληλες πληροφορίες από τη βάση δεδομένων.

Η μέθοδος GET έχει ορισμένα ζητήματα ασφάλειας επειδή τα εισαγόμενα δεδομένα είναι ορατά στη διεύθυνση URL. Μόνο μια περιορισμένη ποσότητα δεδομένων μπορεί να περάσει μέσω μιας μεθόδου GET, καθώς το μήκος της διεύθυνσης URL στο οποίο μπορεί να μετακινηθεί ένα πρόγραμμα περιήγησης μπορεί να είναι χιλιάδες χαρακτήρες.

Ένα άλλο ζήτημα σχετικά με τη μέθοδο GET είναι ότι δεν μπορεί να ασχοληθεί με ξένες γλώσσες. Η μέθοδος GET δεν προτείνεται να χρησιμοποιηθεί, αλλά όταν δεν έχουν οριστεί τα χαρακτηριστικά μεθόδου, η μέθοδος GET χρησιμοποιείται ως προεπιλογή.

Ορισμός της μεθόδου POST

ΘΕΣΗ η μέθοδος είναι κατάλληλη στην κατάσταση όπου μπορεί να περάσει μια σημαντική ποσότητα πληροφοριών. Όταν ένας διακομιστής παραλαμβάνει το αίτημα από μια φόρμα που χρησιμοποιεί το POST, συνεχίζει να "ακούει" για τις πληροφορίες αριστερά. Με απλά λόγια, η μέθοδος μεταφέρει όλες τις σχετικές πληροφορίες της εισόδου φόρμας αμέσως μετά την υποβολή του αιτήματος στη διεύθυνση URL.

Η μέθοδος POST πρέπει να δημιουργήσει δύο επαφές με τον εξυπηρετητή ιστού ενώ το GET κάνει μόνο μία. Τα αιτήματα στο POST διαχειρίζονται με τον ίδιο τρόπο όπως γίνεται στη μέθοδο GET, όπου τα διαστήματα αντιπροσωπεύονται στο σύμβολο συν (+) και οι χαρακτήρες καθόδου κωδικοποιούνται στο πρότυπο διεύθυνσης URL. Μπορεί επίσης να τα στοιχεία ενός αρχείου.

  1. Η μέθοδος GET τοποθετεί τις παραμέτρους μέσα στο URI, ενώ η μέθοδος POST προσαρτά τις παραμέτρους στο σώμα.
  2. Το GET χρησιμοποιείται ουσιαστικά για τη λήψη των πληροφοριών. Αντιθέτως, ο σκοπός της μεθόδου POST είναι η ενημέρωση των δεδομένων.
  3. Τα αποτελέσματα των ερωτημάτων POST δεν μπορούν να καταχωριστούν ως σελιδοδείκτες, ενώ τα αποτελέσματα των ερωτημάτων GET μπορούν να καταχωριστούν ως σελιδοδείκτες επειδή υπάρχουν στη μορφή της διεύθυνσης URL.
  4. Στη μέθοδο GET οι πληροφορίες είναι ορατές στη διεύθυνση URL, γεγονός που αυξάνει τις ευπάθειες και τον κίνδυνο της πειρατείας. Αντίθετα, η μέθοδος POST δεν εμφανίζει μεταβλητή στο URL και μπορούν να χρησιμοποιηθούν πολλαπλές τεχνικές κωδικοποίησης, οι οποίες την καθιστούν ανθεκτική.
  5. Όταν χρησιμοποιείται η μέθοδος GET στη φόρμα, μόνο οι χαρακτήρες ASCII γίνονται αποδεκτοί σε τύπους δεδομένων. Αντίθετα, η μέθοδος POST δεν δεσμεύει τύπους δεδομένων μορφής και επιτρέπει δυαδικούς και ASCII χαρακτήρες.
  6. Το μεταβλητό μέγεθος στη μέθοδο GET είναι περίπου 2000 χαρακτήρες. Αντιστρόφως, η μέθοδος POST επιτρέπει μεταβολή μεγέθους έως και 8 Mb.
  7. Τα δεδομένα μεθόδου GET είναι αποθηκευμένα στην κρυφή μνήμη, ενώ τα δεδομένα της μεθόδου POST δεν είναι.


Παράδειγμα GET

Όταν ο χρήστης εισάγει οποιαδήποτε διεύθυνση URL στη γραμμή τοποθεσίας ενός προγράμματος περιήγησης, όπως http // www.example.com / xyz / file1.htm. Η διεύθυνση μετατρέπεται έπειτα σε έγκυρο αίτημα HTTP GET, για παράδειγμα, GET / xyz / file1.htm HTTP / 1.0.

Αυτό το αίτημα μεταφέρεται στο διακομιστή www.example.com. Το αίτημα ζητά το file1.htm στο xyzκαι αν συνδέεται με τη διάλεκτο 1.0 του HTTP. Εδώ ο χρήστης δεν παίρνει το αρχείο από μόνο του μετά την υποβολή του αρχείου, στην πραγματικότητα ένα πρόγραμμα τρέχει στο παρασκήνιο για να χειριστεί τα δεδομένα της φόρμας.

Ο χρήστης χρειάζεται να περάσει δεδομένα φόρμας με το όνομα του προγράμματος για την εκτέλεση του. Για να επιτευχθεί αυτή η εκτέλεση, οι πληροφορίες φόρμας επισυνάπτονται στην απαιτούμενη διεύθυνση URL. Δημιουργεί μια διεύθυνση URL που έχει εκατό χαρακτήρες μαζί με τα πραγματικά δεδομένα, για παράδειγμα, http://www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=η γυναίκα.

Παράδειγμα POST

Τα δεδομένα που αποστέλλονται από μια φόρμα θα μπορούσαν να εμφανιστούν Όνομα = AI + Αλένα & Ηλικία = 23 & Φύλο = θηλυκό. Το πρόγραμμα χειρίζεται τα δεδομένα χωρίζοντας τα δεδομένα. Τα δεδομένα της φόρμας μπορούν να κωδικοποιηθούν με διαφορετικό τρόπο ENCTYPE χαρακτηριστικό στη μέθοδο POST.

Τα περιεχόμενα της φόρμας δεν εμφανίζονται συνήθως στη διεύθυνση URL και το κύριο πλεονέκτημά της είναι ότι μπορεί να υποβληθεί ένα σημαντικό ποσό δεδομένων χρησιμοποιώντας τη μέθοδο POST.

συμπέρασμα

Η μέθοδος GET και POST χρησιμοποιείται για τη μεταφορά των δεδομένων στο διακομιστή και η κύρια διαφορά μεταξύ αυτών είναι ότι η μέθοδος GET προσαρτά τα δεδομένα στο URI που ορίζεται στο χαρακτηριστικό δράσης της φόρμας. Αντίστροφα, η μέθοδος POST αποδίδει δεδομένα στο αιτούμενο σώμα. Η χρήση της μεθόδου GET είναι ακατάλληλη όταν οι ευαίσθητες πληροφορίες πρέπει να συμπληρωθούν στη φόρμα. Η μέθοδος POST είναι χρήσιμη όταν ο χρήστης χρειάζεται να συμπληρώσει τους κωδικούς πρόσβασης ή άλλες εμπιστευτικές πληροφορίες.