2009-08-06 25 views
0

次のコードを使用して外部XMLから情報を取得しようとしています。それは私のサーバーに同じファイルをアップロードしたときにのみ機能しました。なぜ外部URLから情報を取得できないのですか?get url:xml外部URLが機能しない理由

<script language="javascript"> 
// This script uses jQuery to retrieve the news XML file and display the contents 
$(document).ready(function(){ 

    $.ajax({ 
     type: "GET", 
     url: "www.simplyprofound.com/samples/xml_jquery/sample.xml", 
     dataType: "xml", 
     success: function(xml) { 
      $(xml).find('item').each(function(){ 
       var title = $(this).find('title').text(); 
       var source = $(this).find('source').text(); 
       var description = $(this).find('description').text(); 
       $('<div class="news_title"></div>').html(title).appendTo('#news_wrap'); 
       $('<div class="news_source"></div>').html(source).appendTo('#news_wrap'); 
       $('<div class="news_description"></div>').html(description).appendTo('#news_wrap'); 
      }); 
     } 
    }); 
}); 
</script> 

答えて

0

のようなので、あなたのURLの前にhttp://を入れて:

http://www.simplyprofound.com/samples/xml_jquery/sample.xml 

をそれ以外の場合は、/www.simplyprofound.com/samples/xml_jquery/という名前のサイトのディレクトリにsample.xmlという名前のファイルを見つけようとします。

+0

私もそれを試しました。とにかくそれを修正するために –

0

jQuery AJAXのものはXMLHTTPRequest(ほとんどの場合)を使用しているため、自分のものではないドメイン(セキュリティ機能として)にリクエストすることはできません。

+0

?私の顧客の一人は、URLを表示せずにxxx.comからyyy.comへ情報を取得したいと考えています。ここでの問題は、yyy.comのサーバーでサーバー側のスクリプトを使用できないことです。 –

+0

フロントエンドスクリプトをxxx.com/somethingに、サーバー側では、使用する言語で使用できるツール/機能を使用してコンテンツを取得します。 –

0

x-domain xhrリクエストは実行できません。サーバー側のプロキシーを使用することができます。サーバー上のajax呼び出しを使用してサーバー上のリモート要求を行い、ファイルの内容に応答します。エンドポイントがjson-pをサポートしている場合は、dataTypeをjsonpを呼び出してデータを要求します。

+0

"エンドポイントがjson-pをサポートしている場合は、dataTypeをjsonpに設定してデータを要求できます。私はこのオプションを使いました。これは有効なjsonですか、そうでない場合は、なぜですか? :: http://www.pangeaadvisors.org/sep123/blog.cs.asp?Process=ViewBlog –

+0

これは無効です。閉じ角カッコの直前にカンマがあります]。ここで有効なjsonを確認してください。http://jsonlint.com/ – redsquare

+0

こんにちは、有効です。最初のメッセージのコードはまだ値を取得していません。 http://www0.gsb.columbia.edu/students/organizations/sec/conference2009/blog.htm –

関連する問題