0

晚上好,
我的 Pebble Watch 项目已经发展,我现在使用官方外部 API 发出 HTTP 请求以获取值。我之前的问题是关于 JSON 的,现在我得到的是 XML 格式的结果。
这是我调用 API 时得到的 XML:

<?xml version="1.0" encoding="UTF-8"?>
<root>
   <items>
      <item id="1234567">
         <author gender="man" country="France" region="Ile-de-France">myuser</author>
         <category>mycategory</category>
         <date>2010-08-23T05:48:51+02:00</date>
         <from />
         <text>THIS IS THE CONTENT</text>
         <comments_flag>1</comments_flag>
         <short_url>http://myshort.url</short_url>
      </item>
   </items>
   <comments />
   <active_key>1234567890</active_key>
   <code>1</code>
   <pubdate>2014-07-12T18:51:49+02:00</pubdate>
   <language>fr</language>
   <errors />
</root>

这就是我现在在我的 SimplyJS 脚本中的内容:

simply.on('accelTap' || 'singleClick', function(e) {
      simply.body("Loading...");
      ajax({ url: 'http://myAPIurl', type:'xml' }, function(data){
      simply.scrollable(true);
      simply.body(data);
    });
  //}
});


结果,完整的 XML 显示在我的 Pebble 上。但我只想获取< text >部分下的内容。
我已经尝试过使用一些“data.text”选择器,比如在 JSON 中,但是我得到了对象错误。

谢谢 !

4

1 回答 1

1

感谢 Pebble 论坛的 Pedrolane 成员找到了解决方案
这是我使用的单行代码:

var mytext = data.match(/<text>(.*?)<\/text>/)[1];

要获得完全可读的文本,请替换 '& quot;' '"' 的文本:

mytext = mytext.replace(/&quot;/g, "\"");

参考:Simply.JS 文档

于 2014-07-13T13:50:42.807 回答