残念な事にJSでxmlを・・

だめだ・・。

XMLHttpRequest使って「いろんな所のblogまとめrssリーダ」
を作ろうとしてたらクロスドメイン制限でひかかっちゃうわ。

IEは閲覧できるけどアラート出ちゃうし
firefox3なんて表記もされずエラー出ちゃってるし

JSだと相手のサーバー側でクロスドメイン制限回避しかないみたいだね、

他ドメインのRSSはサーバ側で読込んでパースして
クライアント側で受け取ったほうがいいみたい。

でもまあなんか一応読込む部分のソース残しとくかー
同一ドメイン・クロスドメイン制限回避済だったら使えるわけだしね

<script language="javascript">
var gCompleteCode = 4;
var gHTTPStatusOK = 200;
var request = null;

try {
request = new XMLHttpRequest();
} catch(trymicrosoft) {
try {
request = new ActiveXObjext("Msxm2.XMLHTTP");
} catch(othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (faild) {
request = null;
}
}
}
if(request == null) {
alert("エラー!");
}

function getXml() {
if (request) {
request.onreadystatechange = check;
request.open("GET", "http://sopeo.pocotan.com/feed/",true);
request.send(null);
}
}
function check() {
if (request.readyState == gCompleteCode && request.status == gHTTPStatusOK) {
var element = document.createElement("div");
element.id = "respons";
element.innerHTML = request.responseText;

var objBody = document.getElementsByTagName("body").item(0);
objBody.appendChild(element);
}
}

getXml();

</script>

参照サイト
XMLHttpRequest - MDC
Firefox3のクロスサイトXMLHttpRequestの仕様

Tags: ,

Leave a Reply