Κατανόηση της ιδιότητας HTML DOM document.domain

Katanoese Tes Idiotetas Html Dom Document Domain



ΕΝΑ όνομα τομέα μπορεί να οριστεί ως μια διεύθυνση web που μπορούν να χρησιμοποιήσουν οι άνθρωποι ενώ αναζητούν μια ιστοσελίδα. Μπορούμε να φτάσουμε στον ιστότοπο πληκτρολογώντας τη διεύθυνση web στο πρόγραμμα περιήγησης. Για παράδειγμα, πληκτρολογώντας ' twitter.com ' στη γραμμή αναζήτησης ενός προγράμματος περιήγησης θα σας μεταφέρει στον επίσημο ιστότοπο του Twitter. Ομοίως, οποιοσδήποτε ιστότοπος πρέπει να έχει ένα μοναδικό όνομα τομέα, ώστε οι χρήστες να μπορούν να μεταβούν σε αυτόν.

Αυτό το άρθρο συζητά το έγγραφο.τομέας ιδιότητα λεπτομερώς μαζί με ένα παράδειγμα.

Πώς να κατανοήσετε την ιδιότητα τομέα εγγράφου HTML DOM;

Το όνομα τομέα μπορεί να βρεθεί μέσω της ιδιότητας 'domain.name'. Αντιπροσωπεύει το όνομα τομέα της διεύθυνσης URL που έχει φορτωθεί στον ιστότοπο.







Σύνταξη



έγγραφο. τομέα

Εδώ, το 'document' αντιπροσωπεύει την ιστοσελίδα της οποίας ο τομέας πρέπει να είναι γνωστός.



R eturn Value

  • Η ιδιότητα τομέα επιστρέφει a σειρά που αντιπροσωπεύει το όνομα τομέα διακομιστή από όπου φορτώθηκε το έγγραφο.
  • Η ιδιότητα τομέα επιστρέφει μηδενικό εάν το έγγραφο δημιουργήθηκε στη μνήμη.

Σημείωση: Το ακίνητο έχει καταστεί απαρχαιωμένο και δεν συνιστάται πλέον για χρήση.





Παράδειγμα: Κατανόηση της ιδιότητας document.domain DOM HTML

Ας δούμε το ακόλουθο παράδειγμα για να δούμε πώς μπορούμε να εξαγάγουμε το όνομα τομέα του ιστότοπου χρησιμοποιώντας την ιδιότητα document.domain:

DOCTYPE html >

< html >

< σώμα >

< h1 > Καλώς ήρθατε στο Linuxhint. με h1 >

< κουμπί κάνοντας κλικ = 'getdomain()' > Ελεγχος ! κουμπί >

< p id = 'έλεγχος' Π >

< γραφή >

λειτουργία getdomain ( ) {

αφήστε το y = έγγραφο. τομέα ;

έγγραφο. getElementById ( 'έλεγχος' ) . innerHTML = και ;

}

γραφή >

σώμα >

html >

Στο παραπάνω παράδειγμα:



  • Μια επικεφαλίδα με το κείμενο 'Καλώς ήρθατε στο linuxhint.com' δημιουργείται χρησιμοποιώντας την ετικέτα h1.
  • Ορίζεται ένα κουμπί που λέει 'Έλεγχος!' και καλεί τη συνάρτηση JavaScript getdomain() .
  • Ο κώδικας JavaScript για το getdomain() είναι γραμμένος μέσα στην ετικέτα του σεναρίου.
  • Μέσα στη συνάρτηση getdomain(), μια μεταβλητή 'y' δηλώνεται και εκχωρείται με την ιδιότητα 'document.domain'.
  • Η συνάρτηση 'getdomain()' ενεργοποιείται όταν το 'Έλεγχος!' γίνεται κλικ στο κουμπί και ανακτά το όνομα τομέα.

Παραγωγή

Η παρακάτω εικόνα δείχνει ότι το « έγγραφο.τομέας Η ιδιοκτησία ' ανακτά με επιτυχία το όνομα τομέα του ιστότοπου:

Κατάργηση του document.domain Ιδιοκτησία

Η ιδιότητα document.domain DOM HTML καταργείται λόγω της ασυμφωνίας της με τις προστασίες ασφαλείας που παρέχονται από την πολιτική ίδιας προέλευσης. Κάνει το βασικό μοντέλο στα προγράμματα περιήγησης πολύπλοκο που μπορεί να προκαλέσει προβλήματα ασφαλείας.

Η ρύθμιση 'document.domain' δεν συνιστάται, καθώς όλη η πρόσβαση στο DOM της σελίδας είναι διαθέσιμη από κάθε υποτομέα. Αυτό δεν είναι αυτό που απαιτούμε, καθώς η σελίδα μας είναι προσβάσιμη από άλλες σελίδες που έχουν παρόμοιο τμήμα κεντρικού υπολογιστή ή διεύθυνση IP. Αυτό μπορεί να συμβεί ακόμη και με μια ξεχωριστή θύρα. Αυτό προκαλεί σοβαρά προβλήματα ασφαλείας στην περίπτωση της κοινής φιλοξενίας.

Τι μπορεί να χρησιμοποιηθεί αντ 'αυτού;

' Window.postMessage ' μπορεί να χρησιμοποιηθεί ως εναλλακτική στην ιδιότητα 'document.domain' για την παράδοση ενός ασύγχρονου μηνύματος. Αυτό έχει ελεγχόμενη πρόσβαση και επομένως είναι πολύ πιο ασφαλές από όλες τις ανασφαλείς αποκαλύψεις δεδομένων που γίνονται από την ιδιότητα 'document.domain'.

συμπέρασμα

Το HTML DOM ' έγγραφο.τομέας Η ιδιοκτησία λαμβάνει τον τομέα του ιστότοπου που έχει φορτωθεί αυτήν τη στιγμή. Καταργείται λόγω της ασυνέπειάς του με τις προστασίες ασφαλείας που παρέχονται από την πολιτική ίδιας προέλευσης. Επομένως, μια εναλλακτική σε αυτήν Window.postMessage χρησιμοποιείται για την παράδοση μηνυμάτων σε άλλες πηγές. Σε αυτό το άρθρο, συζητήσαμε την ιδιότητα document.domain, το παράδειγμά της, την κατάργηση και μια κατάλληλη εναλλακτική λύση.