【问题标题】:Parsing Google Stock XML解析谷歌股票 XML
【发布时间】:2011-09-26 15:46:52
【问题描述】:

我花了很长时间试图弄清楚这一点,但现在它让我发疯了。我正在尝试为 Google 的非官方股票 api 解析 XML,如下所示:http://www.google.com/ig/api?stock=GOOG

我从来没有处理过只使用属性的 XML,所以我不知道这是否让我完全无法弄清楚这一点。我通过一个简单的 PHP sn-p 提取 XML,然后尝试使用 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>

我是不是完全走错了路?任何指导都会很棒。

【问题讨论】:

  • 您需要对 XML 进行 Javascript 转义。
  • @SLaks 实际上,如果您查看他正在获取的 XML,则包含在其中是安全的。
  • @DanielBrockman:对于这只特定的股票。如果攻击者可以让股票上市,他就有一个 XSS 漏洞。
  • 您希望$this 是什么?它没有在任何地方定义。
  • @SLaks 好的,好的,好点。 (我的意思是,我也不会像那样把它扔掉,我只是觉得听起来你的意思是这就是问题所在。)

标签: javascript jquery xml parsing


【解决方案1】:

最后一行是这样的:

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

(虽然我不确定为什么将包含&lt;last&gt; 元素的变量称为$title?)

【讨论】:

  • 哎呀,我应该在发布之前先清理所有内容。最初我是在拉出多个东西,然后专注于一个进行调试。出于某种原因,如果我在警报中调用它,我现在可以查看该值,但不能在#goog 中!不过,我想我现在可以弄清楚了。感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-16
  • 1970-01-01
  • 1970-01-01
  • 2014-08-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多