无法在 Brightscript 中解析 xml 字符串

Unable to parse xml string in Brightscript

我目前正在尝试为 Roku 创建一个应用程序,用户可以在其中找到和观看我教会档案中可用的一些最近录制的教堂服务。为此,我访问了一个 API,其中包含一个 XML 文档,其中包含与所述录音有关的数据。该文档包含一个名为 ArrayOfMediaModel 的元素,其中至少包含 30 个或更多元素,称为 MediaModel 节点。我希望解析来自这些节点的信息,以便为最终用户创建和播放视频提要

话虽如此,我似乎无法解析这些信息。每次尝试时,我都会在命令提示符中收到以下错误:

Function call operator () attempted on non-function. (runtime error &he0) in pkg:/source/CreateRecentMenu.brs(8)

这是我为这个操作准备的代码。正如您可以从标题中推测的那样,它是用 Brightscript 编写的。

sub CreateRecentMenu()
   screen = CreateObject("roGridScreen")
   port = CreateObject("roMessagePort")
   xml = CreateObject("roXMLElement")
   screen.setMessagePort(port)

   xml = GetXML("[a url exists here which i removed in this post]")
   Parse (xml)

   'more code occurs beyond this, but the function crashes upon the Parse() call

end sub

GetXML 函数从 url 指定的 XML 文件中检索数据(同样,为了在这里发布,我删除了它)和 returns 一个字符串。我已经测试了这个结果,我相信它正确地 returns 了预期的字符串。

阅读 Roku Brightscript 的文档,这似乎应该有效,但实际上无效。据我了解,为了从 xml 文档中检索任何有意义的信息,我必须对 xml 字符串执行 Parse() 函数。非常感谢提供的任何帮助。

难怪,您对 xml 究竟是什么感到困惑 - 它是已解析的对象还是 xml 文本。试试这个:

   xml = CreateObject("roXMLElement")
   xml_str = GetXML("[a url exists here which i removed in this post]")
   xml.parse(xml_str)