2011-09-26 88 views
1

我花費了大量的時間來解決這個問題,但在這一點上它讓我瘋狂。我試圖解析XML的谷歌的非官方股票api是這樣的:http://www.google.com/ig/api?stock=GOOG解析Google Stock XML

我從來沒有處理過只使用屬性的XML,所以我不知道這是什麼使我完全無用的在弄清楚這一點。我通過一個簡單的PHP代碼片斷,然後嘗試使用jQuery.parse()解析它。

<script> 
    var xml = '<? echo get_url_contents('www.google.com/ig/api?stock=GOOG'); ?>', 
     xmlDoc = $.parseXML(xml), 
     $xml = $(xmlDoc), 
     $title = $xml.find("last"); 

    /* append stock value to #goog */ 
    $("#goog").append($this.attr($title)); 
</script> 

我在這裏只是完全錯誤的軌道?任何指導都會很棒。

+0

你需要JavaScript的逃脫XML 。 – SLaks

+0

@SLaks其實,如果你看看他正在提取的XML,那麼包含它就很安全。 –

+1

@DanielBrockman:對於這個特定的股票。如果攻擊者能夠得到所列的股票,他就有一個XSS漏洞。 – SLaks

回答

2

這裏的最後一行是什麼樣子:(?雖然我不知道爲什麼變量保持<last>元素被稱爲$title

$("#goog").text($title.attr("data")) 

+0

Gah我應該在發佈之前先清理所有東西。最初我抽出了很多東西,然後專注於調試。出於某種原因,我現在可以查看該值,如果我在警報中調用它,而不是在#goog中!不過,我想現在我可以弄明白了。感謝您的幫助! –