1

RESTサービスから返された単純なテキスト文字列をWebページに表示する必要があります。私は現在XMLHttpRequestを使用しています:

<div id="returnedText"></div>
<script type="text/javascript">
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
    if(xhr.status == 200 && xhr.readyState == 4) {
    document.getElementById("returnedText").innerHTML=xhr.responseText;
}
};
xhr.open("GET",url,true);
xhr.send(null);
</script>

もっと軽い方法はありませんか?スクリプトタグの使用を検討しましたが、問題のWebサービスはJSONPをサポートしていません。また、iframeを使用して単純な試みを行いました(REST URLをsrcとして設定)が、機能しませんでした。

4

2 に答える 2

2

iframeで別の試みをしましたが、実際にはこれで問題なく動作します。

<iframe src="url"></iframe>

ここで、urlはRESTサービス呼び出しです。

私は最初に何か間違ったことをしたに違いありません(おそらく認証の問題)。

于 2012-08-06T05:10:55.223 に答える
1

さて、iframeルートは、REST応答をロードし、JS経由でそれに到達して応答を取得するため、不格好です。さらに、ブラウザのアドレスバー領域に目に見える負荷がかかる可能性があります。AJAXはiframeハックを廃止するためにやって来ました:)

JSON-PはAJAXとほぼ同じくらいのセットアップを必要とし、サーバーがコールバックをサポートしていない場合、それは初心者ではありません。

AJAXは重いと考える必要はありません。それを独自のユーティリティ関数に組み込むか、さらに良いことに、ライブラリを使用して、このような要求を1行で実行できるようにします。jQueryの例:

$.get('some/path').done(function(response) { /* do something */ });
于 2012-07-09T20:36:04.927 に答える