Η Ajax κατατάσσεται αρκετά ψηλά στους μεγαλύτερους λόγους για τη χρήση του jQuery. Το jQuery όχι μόνο διορθώνει τα προβλήματα μεταξύ των προγραμμάτων περιήγησης, αλλά κάνει τη σύνταξη πολύ εύκολη στη χρήση και την κατανόηση.
Σε αυτό το βίντεο παίρνουμε ένα χτύπημα για να εξηγήσουμε τι είναι το Ajax. Εξετάζουμε ένα στοιχείο φόρμας, το οποίο όταν υποβάλλεται, υποβάλλει ένα αίτημα GET ή POST (όπως καθορίζεται από το χαρακτηριστικό της μεθόδου) στη διεύθυνση URL που καθορίζετε (όπως καθορίζεται από το χαρακτηριστικό action). Αυτό είναι απλώς HTML, δεν υπάρχει καθόλου κώδικας ή JavaScript. Ωστόσο, αυτή η υποβολή θα προκαλέσει την αλλαγή της σελίδας, κυριολεκτικά φορτώστε ξανά τη νέα διεύθυνση URL, όπως κάνοντας κλικ σε έναν σύνδεσμο.
Το Ajax μας επιτρέπει να κάνουμε αυτό το αίτημα GET ή POST στο παρασκήνιο, χωρίς να φορτώσουμε ξανά τη σελίδα. Στον πυρήνα του, αυτό είναι όλο το σημείο του Ajax. Και είναι πολύ ισχυρό. Είναι σε μεγάλο βαθμό υπεύθυνο για το γιατί οι σύγχρονοι ιστότοποι λειτουργούν και αισθάνονται τον τρόπο που κάνουν.
Το Ajax συνήθιζε να "αντιπροσωπεύει" ασύγχρονη JavaScript και XML, αλλά αυτό σε μεγάλο βαθμό αγνοείται αυτές τις μέρες επειδή δεν σημαίνει πολλά. Εξ ου και η απο κεφαλαιοποίηση. Ενδέχεται επίσης να δείτε μερικές φορές το "XHR" που είναι σύντομο για το XMLHttpRequest, το οποίο είναι η εγγενής τεχνολογία πυρήνα του Ajax.
Η διαφορά μεταξύ GET και POST είναι ουσιαστικά: Το GET είναι για τη λήψη πληροφοριών και δεν πρέπει να είναι υπεύθυνο για την αλλαγή δεδομένων και το POST είναι ειδικά για την αλλαγή δεδομένων. Μη διστάσετε να διαβάσετε περισσότερα σχετικά με αυτό το νήμα StackOverflow.
Η υποβολή αιτήματος GET στο jQuery είναι εκπληκτικά εύκολη:
$.get( "URL", function(data) ( // do something with data )); ));
Η διεύθυνση URL είναι από όπου ελπίζετε να λάβετε τα δεδομένα. Η δεύτερη παράμετρος είναι η συνάρτηση επανάκλησης που εκτελείται όταν το αίτημα Ajax ήταν επιτυχές. Η πιο σημαντική παράμετρος είναι η πρώτη, τα δεδομένα, τα οποία έχουν τις πληροφορίες που έλαβε από το αίτημα.
Οι αιτήσεις Ajax μπορεί να αποτύχουν μερικές φορές. Ένας λόγος για αυτήν την αποτυχία μπορεί να είναι το ίδιο το πρόγραμμα περιήγησης και οι πολιτικές ασφαλείας του. Τα ίδια τα προγράμματα περιήγησης είναι κανόνες σχετικά με το πού μπορεί να ζητηθεί περιεχόμενο. Τα αιτήματα μπορούν πάντα να υποβάλλονται στον ίδιο τομέα από τον οποίο προέρχεται το αίτημα. Αλλά εάν υπάρχει διαφορετικός τομέας, αυτός ο διαφορετικός τομέας θα πρέπει να το επιτρέψει συγκεκριμένα.
Μπορείτε να διαβάσετε όλα σχετικά με αυτό στο activ-cors.org Το CORS σημαίνει "Διαμοιρασμός πόρων μεταξύ προέλευσης". Εξετάζουμε ένα παράδειγμα όπου το CORS δεν είναι ενεργοποιημένο και το αίτημα Ajax αποτυγχάνει. Ένας τυπικός και εύκολος τρόπος για να το διορθώσετε, υποθέτοντας ότι ο διακομιστής είναι ο Apache, είναι να ορίσετε μια κεφαλίδα που επιτρέπει συγκεκριμένα το CORS μέσω του αρχείου .htaccess:
Header set Access-Control-Allow-Origin "*"
Στο βίντεο, απλώς μεταφέρουμε το αίτημα Ajax στο CodePen, το οποίο χειρίζεται το Ajax από προεπιλογή.
Εύκολο τυρί:
Δείτε το Pen fBInl του Chris Coyier (@chriscoyier) στο CodePen