3

ナビゲーション ローカル用の HTML と Javascript を備えた PhoneGap アプリを作成していて、Web からコンテンツをロードする必要があります。

コンテンツ サーバーを直接制御できないため、そこでは何も変更できません。

私のアプリに入れたいコンテンツは、通常の HTML Web サイトに基づいているため、たとえば、da div などのテキストを取得したいと考えています。

私がこれまでに持っているもの:

<script type="text/javascript">
  var url = "http://example.org/"
  updateGadget();

  inervalID = setInterval("updateGadget();", 60 * 1000);

  function updateGadget() {
    $(document).ready(function () {
        $.ajax(url, {}, function (response, status, xml) {
            console.log(response);
        });
    });
  }
</script>

問題は、それが機能しないことです。何も表示されません。

開発には、直接 PhoneGap ではなく Web サーバーを使用します。Google Chrome で Web サイトを開くと、次のエラーが表示されます。

XMLHttpRequest cannot load http://example.org Origin http://example.org is not allowed by Access-Control-Allow-Origin.

コンソールで。

このヘッダーを使用する必要があることがわかりました:

header('Access-Control-Allow-Origin: *');

HTML(PHP)ファイルの一番上に配置すると、解析したいサーバーでは何も実行されません。配置できません。

問題はどこにあり、それを修正するにはどうすればよいですか? または、これを行うためのより良い方法はありますか? 可能であれば、2 番目のサーバー バックエンドなしで PhoneGap アプリで直接実行したいと考えています。

4

1 に答える 1

1

このスタックオーバーフローの質問には解決策があります。

基本的な考え方は、$.getでリクエストを行うことですhttp://whateverorigin.org/get?url=webpage-you-wish-to-scrap.com

于 2014-12-09T16:07:09.400 に答える