ウェブアプリのルートにテキストファイルがありますhttp://localhost/foo.txtそして、それを JavaScript の変数にロードしたいと思います。Groovy では次のようにします。
def fileContents = 'http://localhost/foo.txt'.toURL().text;
println fileContents;
JavaScript で同様の結果を得るにはどうすればよいですか?
ベストアンサー1
XMLHttpRequest、つまり XML なしの AJAX。
これを実行する正確な方法は、使用している JavaScript フレームワークによって異なりますが、相互運用性の問題を無視すると、コードは次のようになります。
var client = new XMLHttpRequest();
client.open('GET', '/foo.txt');
client.onreadystatechange = function() {
alert(client.responseText);
}
client.send();
ただし、通常、XMLHttpRequest はすべてのプラットフォームで使用できるわけではないため、多少の工夫が必要です。この場合も、jQuery などの AJAX フレームワークを使用するのが最善策です。
もう一つの考慮事項: これは、foo.txt が同じドメインにある場合にのみ機能します。別のドメインにある場合は、同一生成元セキュリティ ポリシーにより、結果を読み取ることができません。