1

サーバー側の JavaScript を使用して、任意の Web サイトの HTML コード/データを取得したいと考えています。どうすればこれを達成できますか?

PS: クライアント側の JavaScript からは、同じオリジン ポリシーのために外部ドメインの XMLHttpRequest を実行できないため、これが必要です。

4

2 に答える 2

5

これがQuick-n-Dirtyソリューションです:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

<xp:label id="labelURL">
    <xp:this.value>
        <![CDATA[#{javascript:
            var url:java.net.URL = new java.net.URL("http://google.com");
            url.openConnection();
            var is:java.io.InputStream = url.openStream();
            var c;
            var result = "";
            while( (c = is.read()) != (-1) ){
                result += @Char(c);
            }
            is.close();
            result
        }]]>
    </xp:this.value>
</xp:label>
</xp:view>

リモート URL にアクセスするより良い解決策は、http://hc.apache.org/httpclient-3.x/ を使用することです

于 2013-02-07T14:08:08.007 に答える
1

少し少ない Q&D の方法については、こちらで説明しています。Sven が提案したように、認証、自動リダイレクトなどを提供する Apache HTTP クライアントを使用します。

于 2013-02-07T22:24:44.857 に答える