2

Google Voice 有 XML URL,所以我想知道有人如何从返回的 XML 中提取 JSON 部分并将其解析为页面。Google Voice 的搜索功能现在被破坏了,我想访问我的历史记录。我在想对所有页面的同步调用,直到我历史上最后一个已知的页码应该这样做......

4

2 回答 2

2

这可能是你最好的选择...

在此处阅读有关数据类型转换的信息:http: //api.jquery.com/extending-ajax/

特别是说:

您可以在 ajax 调用的选项中定义转换器“内联”。例如,以下代码请求一个 XML 文档,然后从中提取相关文本,并将其解析为“mydatatype”:

$.ajax( url, {
  dataType: "xml text mydatatype",
  converters: {
    "xml text": function( xmlValue ) {
      // Extract relevant text from the xml document
      return textValue;
    }
  }
});

我不知道这个确切的代码片段是否会正确返回 JSON 内容,但至少它应该将其从 XML 响应中删除(您可能需要添加额外的代码来将返回的“textValue”解析为 JSON。也许使用 jQueryparseJSON方法。

也许尝试:

$.ajax( url, {
  dataType: "xml text mydatatype",
  converters: {
    "xml text": $.parseJSON;
    }
  }
});

希望这可以帮助。

于 2011-03-17T22:12:58.083 回答
1

XML 和 JSON 不是相同的数据类型。您可能必须将数据处理为 XML,如果这是您的数据返回的唯一类型。如果 URL 包含 .xml,您可以尝试将其更改为 .json 以查看它是否返回 JSON 数据类型。

如果您向我们提供更多信息(示例、URL 等),有人可能会更好地帮助您。

于 2011-03-13T01:09:03.790 回答