2011-09-26 55 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中!不过,我想现在我可以弄明白了。感谢您的帮助! –