透過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...

52,253 Responses

  1. ThomasThype表示:

    Bermain slot bisa menjadi pengalaman sosial: bonaslot.site – BonaSlot

  2. ThomasThype表示:

    Slot dengan pembayaran tinggi selalu diminati: BonaSlot – bonaslot

  3. Williecrady表示:

    Pemain harus menetapkan batas saat bermain http://bonaslot.site/# Beberapa kasino memiliki area khusus untuk slot

  4. DavidCooth表示:

    http://preman69.tech/# Slot modern memiliki grafik yang mengesankan

  5. DavidCooth表示:

    https://garuda888.top/# Banyak kasino menawarkan permainan langsung yang seru

  6. Aaronbus表示:

    slot demo rupiah slotdemo Kasino sering memberikan hadiah untuk pemain setia

  7. ThomasThype表示:

    Slot dengan bonus putaran gratis sangat populer: BonaSlot – bonaslot

  8. Williecrady表示:

    Mesin slot digital semakin banyak diminati https://bonaslot.site/# Kasino memastikan keamanan para pemain dengan baik

  9. Williecrady表示:

    Jackpot progresif menarik banyak pemain http://garuda888.top/# Kasino sering memberikan hadiah untuk pemain setia

  10. ThomasThype表示:

    Pemain harus memahami aturan masing-masing mesin: slot demo pg gratis – slot demo pg gratis

  11. Aaronbus表示:

    slotdemo slot demo rupiah Kasino sering memberikan hadiah untuk pemain setia

  12. Williecrady表示:

    Pemain bisa menikmati slot dari kenyamanan rumah https://bonaslot.site/# Mesin slot digital semakin banyak diminati

  13. ThomasThype表示:

    Kasino memiliki suasana yang energik dan menyenangkan: slotdemo – slot demo gratis

  14. ThomasThype表示:

    Banyak pemain menikmati jackpot harian di slot: garuda888 – garuda888.top

  15. DavidCooth表示:

    http://slotdemo.auction/# Slot dengan tema budaya lokal menarik perhatian

  16. DavidCooth表示:

    http://slotdemo.auction/# Kasino di Bali menarik banyak pengunjung

  17. Aaronbus表示:

    garuda888 garuda888 slot Kasino di Jakarta memiliki berbagai pilihan permainan

  18. Williecrady表示:

    Slot klasik tetap menjadi favorit banyak orang http://preman69.tech/# Banyak pemain menikmati bermain slot secara online

  19. ThomasThype表示:

    Slot menawarkan kesenangan yang mudah diakses: garuda888 – garuda888.top

  20. This is a very good tip especially to those new to the blogosphere.Simple but very precise information… Thanks for sharing this one.A must read article!

  21. EarnestAvada表示:

    Hi! I realize this is kind of off-topic however I needed to ask. Does managing a well-established blog like yours take a lot of work? I’m brand new to running a blog however I do write in my diary on a daily basis. I’d like to start a blog so I will be able to share my personal experience and feelings online. Please let me know if you have any suggestions or tips for brand new aspiring blog owners. Thankyou!

    Pretty! This has been an incredibly wonderful article. Thanks for providing this info.

    Wyoming Valley Equipment LLC

  22. Aaronbus表示:

    slot demo demo slot pg Kasino menyediakan layanan pelanggan yang baik

  23. ThomasThype表示:

    Slot dengan tema film terkenal menarik banyak perhatian: garuda888 – garuda888 slot

  24. DavidCooth表示:

    http://slot88.company/# Slot menjadi bagian penting dari industri kasino

  25. Williecrady表示:

    Banyak pemain mencari mesin dengan RTP tinggi http://slot88.company/# Mesin slot sering diperbarui dengan game baru

  26. ThomasThype表示:

    Slot menawarkan berbagai jenis permainan bonus: garuda888 – garuda888

  27. ThomasThype表示:

    Kasino mendukung permainan bertanggung jawab: slotdemo – slot demo gratis

  28. DavidCooth表示:

    http://slotdemo.auction/# Kasino sering mengadakan turnamen slot menarik

  29. DavidCooth表示:

    https://bonaslot.site/# Banyak kasino memiliki program loyalitas untuk pemain

發佈留言

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