wsf.cdyne.com/WeatherWS/Weather.asmx が提供する天気 Web サービスを利用しようとしています。URI " ' http://wsf.cdyne.com/WeatherWS/Weather.asmx/GetCityForecastByZIP?ZIP= ' + zipcode"を使用して、XML 形式で応答を取得できると確信しています。
そこで、XmlHttpRequest を使用して上記の uri を送信します。ステータスを監視するアラートをいくつか追加しました。open() の後、readyState は 1 です。その後、他の応答を取得できません。「xmlHttpRequest.onreadystatechange = processRequest;」ステートメントを削除すると、send() の後に応答が表示されません。ですから、誰かが何が間違っているかを確認するのを手伝ってくれることを願っています。
<html>
<head>
<title>weather app</title>
</head>
<body>
<script language="JavaScript">
function httpGet()
{
var xmlHttp;
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
if (xmlHttp.overrideMimeType)
xmlHttp.overrideMimeType('text/xml');
}
else if (window.ActiveXObject) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
}
}
}
xmlHttp.open( "GET", "http://wsf.cdyne.com/WeatherWS/Weather.asmx/GetCityForecastByZIP?ZIP=85281", false );
alert("1 " +xmlHttp.readyState);
xmlHttpRequest.onreadystatechange = processRequest;
alert("2 " +xmlHttp.readyState);
xmlHttp.send();
alert("3 " +xmlHttp.readyState);
document.write(xmlHttp.responseText);
return xmlHttp.responseText;
}
httpGet();
</script>
</body>
</html>