透過JS跨網域存取XML檔

為了一些安全性的因素,通常伺服器會阻擋跨網域的XML存取,當然如果你是該網站開發者,所開發的頁面應該將會被放在被認可的網域中,不會碰到這個問題,但我們在開發前期有可能會不在所屬的網域,這樣就會造成開發上的困難,不過我們可以透過Yahoo所提供的YQL查詢語法來解決這個問題,以下就是相關的說明:

若我們在自己的電腦用以下的語法去存取一個網路上的XML

<script>
    $(function () {
        var xmlSource = "http://stanley.cloudlab.tw/crossDomainXML/testXML.xml";
        $.ajax({
            url: xmlSource,
            success: function (data) {
                console.log(data);
            }
        })
    })
</script>

很可能會出現「No Access Control Allow Origin」的訊息:

Cross doamin XML access

但如果套用上YQL之後

<script>
$(function(){
	var xmlSource = "http://stanley.cloudlab.tw/crossDomainXML/testXML.xml";
	var yqlURL = [
		"http://query.yahooapis.com/v1/public/yql",
		"?q=" + encodeURIComponent("select * from xml where url='" + xmlSource + "'"),
		"&format=xml&callback=?"
	].join("");

	$.getJSON(yqlURL, function(data){
		console.log(data)
	});
	
})
</script>
Cross doamin XML access

可以看到已經可以抓到XML內容,這樣可以讓我們較為方便的去開發,其他詳細的使用說明可以參考Yahoo YQL Guide

You may also like...

42,918 Responses

  1. The few websites related to Malwa Ware and Jorwe Ware are also found.

  2. вывод из запоя цены ростов-на-дону http://www.vyvod-iz-zapoya-rostov18.ru .

  3. Jeremypag表示:

    semaglutide cost rybelsus price rybelsus pill

  4. Jeremypag表示:

    ozempic online buy ozempic ozempic

  5. RamonRek表示:

    buy rybelsus online: rybelsus cost – semaglutide online

  6. BarryDof表示:

    http://rybelsus.shop/# semaglutide online

  7. Frankevild表示:

    http://rybelsus.shop/# rybelsus cost

  8. 헬로밤表示:

    Pretty! This has been an extremely wonderful article. Many thanks for providing these details.

  9. Frankevild表示:

    https://ozempic.art/# ozempic online

  10. LeroyAcuff表示:

    Профессиональный сервисный центр где отремонтировать телефон ремонт смартфонов

  11. Jeremypag表示:

    buy rybelsus online buy rybelsus online semaglutide tablets

  12. Jeremypag表示:

    ozempic coupon ozempic cost ozempic generic

  13. BarryDof表示:

    http://rybelsus.shop/# rybelsus coupon

  14. анонимный. вывод. из. запоя. ростов. анонимный. вывод. из. запоя. ростов. .

  15. BarryDof表示:

    https://rybelsus.shop/# cheapest rybelsus pills

  16. RamonRek表示:

    buy ozempic pills online: ozempic coupon – ozempic cost

  17. Jeremypag表示:

    buy cheap ozempic Ozempic without insurance ozempic

  18. Jeremypag表示:

    buy semaglutide pills buy rybelsus online buy semaglutide pills

  19. I’m very pleased to find this website. I need to to thank you for ones time just for this fantastic read!! I definitely appreciated every part of it and I have you book-marked to see new things on your web site.

  20. BarryDof表示:

    http://rybelsus.shop/# rybelsus pill

  21. Frankevild表示:

    http://rybelsus.shop/# buy rybelsus online

  22. Frankevild表示:

    https://rybelsus.shop/# semaglutide tablets

  23. BarryDof表示:

    https://ozempic.art/# ozempic coupon

  24. Профессиональный сервисный центр по ремонту электросамокатов в Москве.
    Мы предлагаем: ремонт руля электросамоката
    Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!

  25. Jeremypag表示:

    rybelsus pill semaglutide tablets cheapest rybelsus pills

  26. Jeremypag表示:

    rybelsus price buy semaglutide pills rybelsus coupon

  27. HaroldBig表示:

    Ozempic without insurance: ozempic coupon – ozempic online

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。