2017-11-26 8 views
0

問題が発生しました。を使用しています。私のコードのどこかでを使用してAPIを取得することができたので、ここで何がうまくいかないのか分かりません。どんな助けでも大歓迎です。AJAXを使用してXMLを解析する

<div id="technology" class="tab-pane fade"> 
    <h3>TECH</h3> 
    <p id="tech_news"></p> 
</div> 

$(document).ready(function() { 
    $.ajax({ 
    type: "GET", 
    url: "http://feeds.bbci.co.uk/news/technology/rss.xml", 
    dataType: "xml", 
    cache: false, 
    success: parseXml 
    }); 
}); 

function parseXml(xml) { 
    $(xml).find("item").each(function() { 
    $("#tech_news").append($(this).find("title").text() + "<p>"); 
    $("#tech_news").append($(this).find("description").text() + "<p>"); 
    }); 
} 
+0

あなたは 'xml'というレスポンスを共有できます –

+0

@MuhammadOmerAslamどういう意味ですか?ごめんなさい。 –

+0

あなたは 'dataType:" XML "を指定しました。つまり、' XML'文書を返します。これはjQueryで処理することができます。私はその応答文書について話しています –

答えて

0

実際にあなたが問題があります。私たちは、このエラーメッセージを持っている:No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access

http://feeds.bbci.co.uk/news/technology/rss.xml?_=1511718738881のロードに失敗しました。あなたはを通じてクロス起源の要求を許可するように、このサービスhttps://crossorigin.me/を使用することができますしかし

このような何か:それでも

$(document).ready(function() { 
 
    $.ajax({ 
 
    type: "GET", 
 
    url: "https://crossorigin.me/http://feeds.bbci.co.uk/news/technology/rss.xml", 
 
    dataType: "xml", 
 
    cache: false, 
 
    success: parseXml 
 
    }); 
 
}); 
 

 
function parseXml(xml) { 
 
    $(xml).find("item").each(function() { 
 
    $("#tech_news").append($(this).find("title").text() + "<p>"); 
 
    $("#tech_news").append($(this).find("description").text() + "<p>"); 
 
    }); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="technology" class="tab-pane fade"> 
 
    <h3>TECH</h3> 
 
    <p id="tech_news"></p> 
 
</div>

、あなたはそれが24/7動作しないことがあり、外部サービスであることを知っている必要があります。

+0

ありがとう、これは私のために働いた。しかし、私はそれが実際にどのように機能するかに関して興味を持っています。 https://crossorigin.meは実際に何をしていますか? 私は将来の仕事で私を助けることができるように知りたいです:) –

+0

お元気ですか。 ** CORS **プロキシです。これは、開発者がそのWebサイトを所有することなく、他のWebサイトからリソースにアクセスできるようにするサービスです。応答ヘッダーに 'Access-Control-Allow-Origin:*'がないURLの先頭に 'http://crossorigin.me'を追加するだけです。 –

関連する問題