433 votes

Window.Location.Host vs window.location.hostname et multi-navigateurs compatibilité ?

lequel des deux est le plus efficace vs vérifier si le useragent est l'accès via le bon domaine.

nous aimerions montrer un petit js basé sur le " haut de la barre de style avertissement lorsqu'ils accèdent au domaine à l'aide d'une sorte de proxy web (comme il a tendance à casser le js).

nous avons réfléchi sur l'aide des éléments suivants:

var r=/.*domain\.com$/;
if(window.location.hostname.test(r)){
    showMessage...
}

qui prendrait soin de tous les sous-domaines que nous jamais utiliser.

qui doit-on utiliser de l'hôte ou le nom d'hôte?

dans ff5/chrome12

console.log(window.location.host);
console.log(window.location.hostname);

montre le même pour les deux.

est-ce parce que le port n'est pas réellement dans la barre d'adresse?

http://www.w3schools.com/jsref/obj_location.asp dit l'hôte contient le port.

devrait fenêtre.emplacement.hôte/nom d'hôte sera validé ou pouvons-nous être assez certain dans ie6+ et tous les autres, il va exister?

merci!

1245voto

abernier Points 4115

interactive link anatomy

Comme un petit mémo : l' anatomie du lien interactif

73voto

jfriend00 Points 152127

hôte inclut seulement le numéro de port si il y a un spécifié. S’il n’y a pas de numéro de port plus précisément dans l’URL, puis elle retourne la même chose que le nom d’hôte. Vous pouvez choisir si vous vous souciez faire correspondre le numéro de port ou non. Voir https://developer.mozilla.org/en/window.location pour plus d’informations.

Je suppose que vous voulez hostname juste obtenir le nom du site.

35voto

Kenneth Palaganas Points 135

Si vous êtes insistant pour utiliser le vous pouvez mettre ceci en haut de votre code avant de lire le

Solution : http://tosbourn.com/2013/08/javascript/a-fix-for-window-location-origin-in-internet-explorer/

10voto

bluesmoon Points 1983

Votre première question a été répondue au-dessus. Je voulais juste faire remarquer que l’expression régulière que vous utilisez a un bug. Il réussira aussi sur qui n’est pas un sous-domaine de

Ce que vous voulez vraiment est la suivante :

3voto

Igor Dymov Points 8076

MDN : https://developer.mozilla.org/en/DOM/window.Location

Il semble que vous obtiendrez le même résultat pour les deux, mais `` contient le nom d’hôte claire sans parenthèses ni de numéro de port.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X