Accueil > Forum > > > > différence entre local et serveur
différence entre local et serveur
mardi 10 novembre 2009 à 20:00:59 |
différence entre local et serveur

Erick007
|
Bonjour je ne suis pas sure de comprendre et j'aimerais une petite explication, j'ai écrit un petit script de quoi de très simple qui va chercher a l'aide de l'objet XMLHHTPRequest, un fichier xml sur un serveur pour pouvoir par la suite le traiter et l'afficher.
Le problème est que je ne comprend pas pourquoi ce script fonctionne lorsque je met cette page html/javascript sur le serveur et qu'il ne fonctionne pas en local. Pourtant en local il trouve bien la page car il me retourne pas un code 404 mais un code 0 (si je met une page bidon qui n'existe pas il me retourne 404...).
Voici mon code:
Code Javascript : var objXHR = null;
function loadCharacter(txtVersion, txtCharacter) {
objXHR = createObjXHR();
if(objXHR) {
objXHR.open("GET", "http://maplerank.maplechiefs.com/xml/characterCheck-" + txtVersion + "-" + txtCharacter + ".xml", true);
objXHR.onreadystatechange = displayCharacter;
objXHR.send(null);
} else {
alert("Objet XML null");
}
}
function displayCharacter() {
if(objXHR.readyState == 4) {
if(objXHR.status == 200 || objXHR.status == 0) {
alert('ok');
alert(objXHR.responseText);
} else {
alert('erreur' + objXHR.statusText + objXHR.status);
}
}
}
function createObjXHR() {
if(window.XMLHttpRequest) return new XMLHttpRequest(); // Native Support
if(window.ActiveXObject) { // Microsoft
var names = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP"];
for(var i in names) {
try {
return new ActiveXObject(names[i]);
} catch(e) {}
}
}
return null; // non supporté
}
Merci 
|
|
mercredi 11 novembre 2009 à 10:35:24 |
Re : différence entre local et serveur

Bul3
|
Bonjour,
si ajax retourne 0, c'est qu'il y a une erreur
( probablement le fichier non trouvé )
quand c'est bon, il retourne 200
j'aurais plutôt mis .onreadystatechange avant l'open,
mais bon, ça ne doit pas jouer réellement.
Cordialement [ mon Site] [ M'écrire] Bul 
|
|
mercredi 11 novembre 2009 à 11:33:22 |
Re : différence entre local et serveur

Bul3
|
ah... je veins de voir :
c'est un fichier xml ?
si oui :
vous testez en local pur ou avce wamp ou easyphp ou .. ?
si oui :
le souci est avec IE ou tous les navigateurs ?

|
|
mercredi 11 novembre 2009 à 15:12:22 |
Re : différence entre local et serveur

Erick007
|
Hum quand je dit local, c'est ce qui a de plus local possible lol. J'ai seulement cette page html avec les fichiers .js sans serveur apache wamp ou easyphp. Donc j'ouvre cette page html et j'ai une adresse du genre file:///... (sous firefox) et C:\... sous internet explorer. Et j'ai absolument les mêmes fichiers identique sur mon serveur (sur la même adresse que maplerank.maplechiefs.com).
Je sais que sa doit pas venir de permissions du serveur, car je test avec d'autres adresses et sa me donne le même résultat...
hum et oui c'est bien un fichier xml, comme test je vais chercher le fichier xml http://maplerank.maplechiefs.com/xml/characterCheck-gms-NxTheif.xml. Et j'ai essayer si j'enregistre ce fichier XML en local, et ensuite que dans méthode open je vais chercher cette adresse en local et sa fonctionne.
Lorsque je test en firefox, c'est le résultat que j'ai, avoir 0. Et sous internet explorer il me met une erreur disant Access is Denied...
Mais je croit c bon, j'ai trouver sa https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript et je croit que c'est la cause de cette erreur.
|
|
mercredi 11 novembre 2009 à 15:29:44 |
Re : différence entre local et serveur

Bul3
|
alors déjà, c:\... ça ne fonctionne pas
c:\\... il faut echapper les \, si vous ne
l'avez pas fait, ou utiliser /
utilisez donc la même chose qu'avec Fx
ça baigne.
ensuite, window.XMLHttpRequest répond true aussi
avec IE ( depuis la version 7 ? ) et quand c'est en
pur local, IE refuse pour un xml : il faut utiliser
new ActiveXObject("Microsoft.XMLHTTP");
perso j'emploie les fonctions dédiées
pour chaque navigateurs
new ActiveXObject('Microsoft.XMLDOM')
et .load(fichier) pour IE
document.implementation.createDocument
et .load(fichier) pour Fx
new XMLHttpRequest();
et .open et .send effectivement pour les autres

|
|
mercredi 11 novembre 2009 à 15:35:33 |
Re : différence entre local et serveur

Bul3
|
>il me met une erreur disant Access is Denied...
je n'avais pas lu/répondu jusqu'au bout
ça vient donc bien du .XMLHttpRequest qu'IE
ne veut pas utiliser pour un fichier xml en
pur local. soit ActiveXObject("Microsoft.XMLHTTP");
soit les fonctions dédiées/spécifiques au xml
( si elles existent, il doit bien
y avoir des raisons ) 
|
|
jeudi 12 novembre 2009 à 16:06:15 |
Re : différence entre local et serveur

47
|
Bonjour,
normalement avec Ajax (enfin je pense ^^), on ne peut pas récupérer une information sur un autre domaine (localhost d'un coté, maplerank.maplechiefs.com de l'autre), on a l'erreur: uncaught exception: Access to restricted URI denied (NS_ERROR_DOM_BAD_URI)
peut être l'explication du pourquoi ca marche sur le serveur et pas en local
bonne après midi
|
|
jeudi 12 novembre 2009 à 16:17:10 |
Re : différence entre local et serveur

Bul3
|
tu as raison "47"...
mais depuis un site vers un autre site
( sauf avec Fx qui permet des choses )
depuis une page en local on peut accéder
à tous les sites sans restrictions
non, non l'erreur c'est , comme je l'ai dit,
qu'il faut utiliser new ActiveXObject("Microsoft.XMLHTTP");
pour IE au lieu de new XMLHttpRequest();
uniquement en pur local, sur site ou avec
easyphp, wamp... ça baigne ( on se demande
bien pourquoi ! ) 
|
|
vendredi 13 novembre 2009 à 07:24:03 |
Re : différence entre local et serveur

Bul3
|
"47" avait raison : je viens de tester...
Code HTML : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<script type="text/javascript">
function ajax(url)
{ var queryAJAX;
try { queryAJAX = new ActiveXObject("Microsoft.XMLHTTP"); }
catch(e) { queryAJAX = new XMLHttpRequest(); }
queryAJAX.open('GET', url+'?'+new Date(), false);
queryAJAX.send(null);
alert(queryAJAX.responseText);
}
</script>
</head>
<body>
<button onclick="ajax('local.txt');">en local</button>
<button onclick="ajax('http://bul.chez.com/test/site.txt');">sur site</button>
</body>
</html>
ça marche en local
sur le site, c'est ok avec IE, mais ça ne plait pas à Fx :
Erreur : uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIXMLHttpRequest.send]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: file:///D:/Utilitaires/WampServer/www/Essais/fichier%20avec%20ajax/test.htm :: ajax :: line 10" data: no]
il doit manquer une "instruction quelconque"
avec Fx pour l'autoriser à faire.
bien entendu, avec easyphp ou wamp
vers le site ce serait rejeté pour
tous les navigateurs 
|
|
vendredi 13 novembre 2009 à 07:38:45 |
Re : différence entre local et serveur

Bul3
|
Réponse acceptée !
et pourtant j'avais déjà fait !
Alzheimer me guette....
Code Javascript :
function ajax(url)
{ var queryAJAX;
try { queryAJAX = new ActiveXObject("Microsoft.XMLHTTP"); }
catch(e) { queryAJAX = new XMLHttpRequest();
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserAccess');
}
queryAJAX.open('GET', url+'?'+new Date(), false);
queryAJAX.send(null);
alert(queryAJAX.responseText);
}

|
|
Cette discussion est classée dans : local, code, serveur, objxhr, if
Répondre à ce message
Sujets en rapport avec ce message
applet [ par chaaw00 ]
je voulait savoir comment on fait pour que le flux d'entrée provenant d'un serveur peut arriver a une applet qui se trouve sur mon serveur local que j
Socket bloqué sur le retour [ par ultrafil ]
Salut, j'ai un problème un peu bizard j'espere que quelqu'un pourra m'aider car ca fait bien 1 semaine que je bloque la dessus et je ne comprend plus
Un If ne fonctionne pas [ par francoisch ]
Bonjour <p class="MsoNormal" style="MARGIN: 0cm 0
Cookies et IE : Ok en local, KO sur serveur. [ par hakeem69 ]
Salut la foule !<o:p
ASP+Base de données [ par CHABRY ]
Salut! J'ai téléchargé un code en ASP du fameux site "asp-irine.com" qui permet de manipuler une base de données se trouvant sur un serveur d'où cha
Code upload fichier d'un internaute vers serveur free [ par jujudu59110 ]
Je voudrais que les vivteurs puissent envoyé des fichiers ( photos de préférence ) si posssible accepté que les jpg ou jpeg + bmp vers un serveur free
If/Else sur des checkbox [ par marjerem ]
Bonjour, J'aide un pote à développer une petite appli et je n'arrive pas à me dépatouiller de ce qui semblera peut être simplissime à certains d'entre
Calcule Numéro de Sécurité Sociale [ par Morocco13 ]
Bonjour, ci-dessous un code qui calcule la clé du numéro de sécurité sociale français.Il n'y a aucun problème dans le code, mais ma question serait do
Une fonction liée à un évènement (ex: onBlur, onSubmit) qui ne s'exécute pas... [ par kharshak ]
Bonjour à toi, J'ai un petit problème avec mon code. J'ai une page HTML avec un "joli" formulaire, et des actions de vérification à faire sur certain
Problème de DIV [ par igregbzh ]
Bonjour à tous voila j'effectue une petite application en javascript et la j'ai un gros problème. En fait j'arrive a déplacer et redimensionner les di
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|