J'essaie de créer une connexion ajax à un flux xml météo, puis analyser les données renvoyées. Je n'ai aucun problème à établir une connexion via IE, mais pour une raison quelconque, je n'ai pas de chance dans FF ou Safari. Fondamentalement ce que je fais exécute un fichier html qui contient le code suivant.Exécution Ajax dans IE, FF et Safari
<html>
<script type="text/javascript" language="javascript">
function makeRequest(zip) {
var url = 'http://rdona.accu-weather.com/widget/rdona/weather-data.asp?location=' + zip;
//var httpRequest;
var httpRequest = false;
if (window.XMLHttpRequest) {
document.write("xmlhttprequest");
httpRequest = new XMLHttpRequest();
if (httpRequest.overrideMimeType) {
httpRequest.overrideMimeType('text/xml');
// See note below about this line
}
}
else if (window.ActiveXObject) { // IE
try {
httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}
if (!httpRequest) {
alert('Giving up :(Cannot create an XMLHTTP instance');
return false;
}
httpRequest.onreadystatechange = function() { alertContents(httpRequest); };
httpRequest.open('GET', url, true);
httpRequest.send('');
}
function alertContents(httpRequest) {
if (httpRequest.readyState == 4) {
if (httpRequest.status == 200) {
alert(httpRequest.responseText);
} else {
alert('There was a problem with the request.');
}
}
}
makeRequest(84405);
</script>
</html>
Toute aide ou suggestion serait grandement appréciée.
Est-ce que cela fonctionne si vous supprimez la ligne "document.write (" xmlhttprequest ");" – Annie
Je viens de mettre ça à des fins de test afin que je puisse voir où je vais. – cameron213